Zitat:Das geht natürlich schon und wohl noch eine ganze Weile auch mit mehr Schnittstellen. Aber!!!!!
Lokale Variablen sind nicht synchornisiert, das will heissen die Read Loop pro Schnittstelle kann ganz einfach 200 mal durchlaufen werden bevor Deine Hauptschlaufe einmal im Stande ist diese lokale Variable zu lesen. Falls das kein Problem für Dich ist dann ist das OK, aber Du solltest das schon wissen.
Ich denke mal das es kein Problem für mich ist...?! Meine Hauptschleife greift erst alle 200ms auf die Werte der lokalen Variablen zu und die 3 Leseschleifen machen ihre Sache ja fast as possible. Von daher meinte ich es sollte klappen. Oder wie denkst du?
Zitat:Dein Instrument könnte ja ein ziemlicher dummer Schreier sein der einfach seine Daten wild hinausschreit ohne jeweils erst ein Kommando zu erwarten und für solche Instrumente ist die von Dir gemachte Entkopplung meist die Beste Sache.
Von der Seite her sind meine 3 Module "dumme Schreier" da sie einfach permanent Werte Senden ohne ein Start oder Stop Kommando zu benötigen.
Zitat:Lokale Variablen können Schlaufen entkoppeln, was prinzipiel gut ist aber man muss darauf achten dass die Schreiboperation völlig asynchron zur Leseoperation läuft das heisst, Du kannst in der Hauptschlaufe entweder 100 mal denselben Wert lesen weil die Leseschlaufe eben viel langsamer ist oder im anderen Extremfall liest Du nur jeden x hundersten Wert der von der Leseschlaufe produziert wird. Falls Du Deine Schlaufen doch irgendwie synchronisieren willst wird es komplizierter.
An der Stelle weis ich nicht genau wie du das meinst. Wann oder besser in welchen Fall benötige ich beispielsweise eine Synchrone Abarbeitung?
In meinem Programm werden von den 3 angeschlossenen Modulen nur Werte gelesen, zur Anzeige gebracht und gleichzeitig in ein Binary-File geschrieben...
Mit besten Grüßen und Danke für die Anmerkungen (bin ja eher Anfänger)
Thomas Otto