![]() |
While Schleife unverzüglich abbrechen - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +--- Thema: While Schleife unverzüglich abbrechen (/Thread-While-Schleife-unverzueglich-abbrechen) |
While Schleife unverzüglich abbrechen - Fidel90 - 12.01.2011 16:04 Moin ![]() Kleines Problem: Ich habe 2 While schleifen die parallel und völlig unabhängig voneinander laufen. In der einen (A) laufen Berechnungen, die andere (B) aktualisiert nur alle 5 sek. einen Bildring. Schleife A kann direkt durch einen Button beendet werden. Schleife B soll zeitgleich beendet werden. Hierzu habe ich für Schleife B eine lokale Variable von dem Stop Button von A erzeugt. So weit so gut. Wenn ich auf Stop klicke beendet sich zwar Schleife A, B läuft aber weiter. Nur wenn ich den Button so lange drücke, bis ein weiterer Durchlauf von B vorbei ist (im worstcase eben 5sek ![]() Gibt es eine Möglichkeit Schleife B explizit mit A abzubrechen und nicht erst die eingestellte Wartezeit abzuwarten?? thx für Vorschläge mfg While Schleife unverzüglich abbrechen - GerdW - 12.01.2011 16:11 Hallo Fidel, da musst du wohl Schleife B schneller durchlaufen lassen (d.h. ihre Wartezeit reduzieren). Du musst ja nicht in jedem Durchlauf den PictRing aktualisieren - das kann man ja auch jeden 2., 5. oder 100sten Durchlauf erledigen... While Schleife unverzüglich abbrechen - Fidel90 - 12.01.2011 16:17 Hallo Gerd, doofe Frage: Wie?:)Zur Zeit läuft es bei mir so: [attachment=31638] mfg While Schleife unverzüglich abbrechen - Andora - 12.01.2011 16:31 ' schrieb:doofe Frage: Wie? Hallo, da wäre ein Vorschlag : [attachment=31642] While Schleife unverzüglich abbrechen - GerdW - 12.01.2011 16:31 Hallo Fidel, na so: [attachment=31641] Nur noch 100ms warten, dafür nur jeden 50sten Durchlauf was machen... While Schleife unverzüglich abbrechen - Fidel90 - 12.01.2011 16:34 Danke, jetzt funzts ![]() Schönen Feierabend noch ![]() mfg While Schleife unverzüglich abbrechen - Lucki - 12.01.2011 19:01 ' schrieb:Gibt es eine Möglichkeit Schleife B explizit mit A abzubrechen und nicht erst die eingestellte Wartezeit abzuwarten??Ein Waitfunktion läßt sich nicht unterbrechen - außer daß man das große Wait mit zusätzlicher Schleife in kleine Wait-Scheibchen zerlegt, was aber keine elegante Lösung ist. Ideal ist ein unterbrechbares Wait - und das gibt es durchaus, es nennt sich nur nicht so, sondern es nennt sich "Timeout" und ist in mehreren anderen Funktionen integriert. Z.B. in der Event-Struktur oder in Occurrences. Hier ein Beispiel mit Event-Struktur: [attachment=31640] ![]() Beispiel mit Occurrences (Hinweis: NI empfiehlt Melder anstelle von Occurrences zu verwenden) [attachment=31644] While Schleife unverzüglich abbrechen - Fidel90 - 13.01.2011 08:12 Danke, damit wäre das auch geklärt. Ihr seid super ![]() mfg |