LabVIEWForum.de
Zwei parallele Endlosschleifen - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Zwei parallele Endlosschleifen (/Thread-Zwei-parallele-Endlosschleifen)



Zwei parallele Endlosschleifen - Ragdar - 15.04.2009 13:47

Hallo,

ich stehe vor einem kleinen ProblemSmile Und zwar hab ich in meinem Programm zwei Endlosschleifen(ES) parallel geschalten:

Die erste beinhaltet eine Event-Case, welche die Benutzereingaben verwaltet und die Information für das Gerät in einer String-Variable sammelt.

Die zweite Endlosschleife(ES) frägt in einem periodischen Zyklus die Statuswerte des Gerätes ab und sendet, falls in der String-Variable von der ersten Schleife Informationen sind, die Daten zum Gerät.

Mein Problem ist folgendes:
Ist die String-Variable nicht leer, so sendet die 2. ES die Informationen zum Gerät und leert anschließend den Inhalt der Variable. Dabei kann die Stringvariable unterschliedlich voll mit Befehlen sein: Sehr oft gar nichts, dann 1/2 Befehle, und bei Schiebereglern oft bis zu 20 Befehle.
Allerdings ist es ja sehr wahrscheinlich, dass ich in der Zeit wo die ES 2 die Befehle sendet und dann die Variable löscht, neue Befehle in die Variable gelangen und diese verloren gehen.

Eine lange Schnurr zu ziehen ist ja wegen der Endlosschleife nicht möglich. Hat wer eventl. Ideen?


Zwei parallele Endlosschleifen - kpa - 15.04.2009 13:52

Hallo Ragdar,

verwende eine Queue.

Beispiele in der Hilfe oder hier im Forum.

Grüße

kpa


Zwei parallele Endlosschleifen - Ragdar - 15.04.2009 14:30

Hallo kpa,

danke für diene sehr schnelle Antwort! Hab mich jetz eingelesen und find das grad alles sehr interessant was man da so machen kannSmile Trotzdem ein Problem entsteht jetzt:

1. Endlosschleife mit Event-Case
Je Durchlauf ein Befehl mit Terminationszeichen

Das hab ich am Ende immer mit Hilfe von String zusammenfügen dann in eine lange Stringkette gelegt.

Durch die Queu wird das ja einzeln da reingelegt, was ja nicht so tragisch ist, da ich ja alle mit einem Flush holen kann. Leider hab ich dann ein Array von Strings, aber ich bräuchte einen ganzen String.

Wie wandle ich dann einen Array von String in eine Stringkette um?


Zwei parallele Endlosschleifen - Y-P - 15.04.2009 14:36

Mit "Array to Spreadsheet String".

Gruß Markus

' schrieb:Wie wandle ich dann einen Array von String in eine Stringkette um?