Hi
Zitat:Bei dem Beispiel von Lucki hab ich aber auch noch das Problem das nicht garantiert ist das der Status am Ende der queue gesetzt wird. Da ist die Variante mit "Element am Anfang einfügen" doch die bessere!?!
Da habe ich mich wohl falsch ausgedrückt. Sollte heißen "Status am Anfang der ..." usw.
Zitat:Vergiss "Element am Anfang einfügen", das ist als wenn sich jemand in der Schlange ganz nach vorn drängelt und hat hier bei Dir nichts zu suchen.
Also ich denke das sich eher beim normalen Einfügen jemand vordrängelt. Funktioniert tut das Ganze ja nicht mit dem "hinten Anstellen". Zur Erklärung:
Bei dem großen Programm hab ich z.B. fogenden Ablauf.
1. "State" "Messwerte abholen" - hier werden Daten von einem LCR Meter erfasst
2. "State" "Dateibearbeitung" - hier werden die Messdaten zusammengefasst und in eine Datei geschrieben.
3. "State" "Tabelle erstellen" - hier wird eine Tabelle im Frontpanel aktualisiert.
Das Problem. "State" "Messwerte abholen" wird durch ein Signal von einer Antriebseinheit ausgelöst. Kommt nun dieses Signal und der "State" wird in die Queue geschoben wenn 2. und 3. noch nicht abgearbeitet ist verliere ich die Messdaten da diese nur temporär (Schieberegister) gespeichert werden. In der Queue drängelt sich dann ja 1. vor.
Deswegen das mit der zwingenden Folge. Wie im letzten Post geschrieben kann man das auch mit einer langen Ereignisstruktur abarbeiten.
Ich wollte eigentlich nur eure Meinung hören was denn nun geschickter ist?!? Ist es grundsätzlich falsch so zu programmieren?
Zitat:Das unnötige 100ms Wait ist mir z.B. ein Indiz, daß Du die Funktionsweise der Queues noch nicht richtig verinnerlicht hast
Deswegen frag ich hier ja nach -
Wär eine meiner nächsten Fragen gewesen.
Zitat:So, mit RT hat das aber nichts zu tun. verschoben1.gif
Sorry aber ich hab leider keinen besseren Bereich gefunden...
Nun gut - Da es jetzt erstmal läuft geb ich mich halt zufrieden - allerdings würd ich mich freuen noch ein paar Tips zu bekommen eine ordentliche Struktur hinzubekommen. Schließlich soll der Code ja noch erweitert werden und da will ich besser keine bösen Überraschungen erleben.
Gruß
Martin
P.S. Das mit dem Notaus und der Funktion "Queue löschen" funktioniert einwandfrei.