Registriert seit: 21. Jan 2013
Ort: Ingolstadt
23 Beiträge
FreePascal / Lazarus
|
AW: Informationsauswertung im Hintergrund
3. Feb 2013, 18:04
Danke für die Antworten.
Ich probiere es mal mit dem Timer.
Es müssen immer nur wenige Bytes abgeholt und verarbeitet werden, und die Verareitungsroutine ist auch nicht sehr umfangreich.
Der Zugriff auf den Hauptdatenbereich ist quasi exklusiv. Das heißt nicht formal, aber de Fakto werden die entsprechenden Daten nur von der beschriebenen Routine verändert.
Man muss sich das so vorstellen:
Es gibt quasi eine "Hauptdatenbank" , eine mehrfach verkettete (oder besser vermaschte) Liste die die Modellbahnanlage abbildet. An verschiedenen Elementen werden dann noch Datensätze per 1:n Verknüpfung angehängt.
so z.B Achszählkonten: Dabei ist bei jedem Gleisanfang bzw -ende ein Kontakt, der von den Achsen des Zuges betätigt wird. fährt der Zug in den Abschnitt, wird das Konto erhöht, beim Verlassen wird es erniedrigt. Ist das Konto wieder auf Null, ist der Abschnitt wieder leer. Es werden dabei wenig Resourcen verbraucht, da das "Event" Kontaktbetätigung relativ selten passiert. Oft eine halbe Minute lang gar nix, dann kommen wieder mal ein paar Bytes, usw. Insgesammt eine stressarme Angelegenheit. Die Konten werden ausser bei einem Korrektureingriff nur von den Kontakten verändert, und der Korrektureingriff (Achszählgrundstellung im Störungsfall) wird praktisch nur an Gleisen angewendet, wo kein Zugverkehr stattfindet.
Die Kontenstände selbst werden vom Hauptprogramm nur abgefragt.
Mir ging es nur darum, dass ein Modales Formular den Timer nicht blockiert.
Gruß Fritz
Fritz Tremmel
|