INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Abbruch einer Event-Schleife



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

01.11.2012, 16:28
Beitrag #1

THL Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 109
Registriert seit: May 2011

2012
2009
EN


Deutschland
Abbruch einer Event-Schleife
Ich habe eine Eventschleife, die über timeout in konstanten Zeitabständen eine bestimmte Aktivität in einer Hauptschleife triggert.
Das ganze läuft über eine Queue, da ich auch von ausserhalb des VIs andere Aktivitäten in der Hauptschleife ausführen möchte.
Diese Schleife bzw. das ganze VI soll irgendwann bei Erfüllung eines Kriteriums automatisch beendet werden.
Nun bin ich am Grübeln was die "sauberste" Lösung ist, dieses zu verwirklichen.

Ich habe mal ein Beispiel-VI angehängt, das zwei mögliche Lösungen aufzeigt (inhaltlich ist das VI natürlich Schwachsinn).

Methode 1: Bei Kriterium-Erfüllung wird Val(Sgnl) eines Boolean gesetzt und das Event ausgewertet.
Den Boolean könnte man auf dem Fronpanel noch auf "hidden" setzen, da es ein "Platzhalter" ist, der nicht weiter interessiert.

Methode 2: Es wird ein echtes User-Event generiert und entsprechend ausgewertet.

Welche Methode würdet ihr bevorzugen? Für mich sieht Methode 2 zwar sauberer aus, ist aber doch um einiges komplizierter.
Deswegen tendiere ich eher zu Methode 1, würde aber gerne andere Meinungen zu dem Thema hören.


Angehängte Datei(en)
8.6 .vi  event_abort.vi (Größe: 16,42 KB / Downloads: 134)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
01.11.2012, 16:54 (Dieser Beitrag wurde zuletzt bearbeitet: 01.11.2012 16:55 von GerdW.)
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.425
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Abbruch einer Event-Schleife
Hallo THL,

Methode 3: Lokale Variable nutzen...
   

Bei diesem Minimalbeispiel (ohne weitere Randbedingungen) kannst du dir wirklich aussuchen, was dir am besten gefällt...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
01.11.2012, 19:29
Beitrag #3

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: Abbruch einer Event-Schleife
@Gerd
bei manuellem Stop mit dem Knopf wird es wohl an der bezeichneten Stelle ein hässliche Fehlermeldung geben:
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
01.11.2012, 20:02
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.425
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Abbruch einer Event-Schleife
@Lucki:
Ohne jetzt noch mal nachzuschauen: Der Fehlercluster war auch vorher nicht verdrahtet, ebenso nicht ein Timeout. Kann man aber beides nachholen, um Fehler(meldungen) zu vermeiden/abzufangen...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.11.2012, 08:22 (Dieser Beitrag wurde zuletzt bearbeitet: 02.11.2012 11:14 von Lucki.)
Beitrag #5

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: Abbruch einer Event-Schleife
Man kann ja die Fehlermeldungen in den Queue-Elementen nach Zerstören der Queue auch benutzen, um parallele Schleifen zu beenden. In vielen Fällen ist das sogar die einfachste Lösung.
   
(Anm.: Stopknopf = Latch)
Edit: Vergessen VI anzuhängen

8.6 .vi  event_abort.vi (Größe: 9,13 KB / Downloads: 153)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.11.2012, 09:35
Beitrag #6

THL Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 109
Registriert seit: May 2011

2012
2009
EN


Deutschland
RE: Abbruch einer Event-Schleife
Eine Anmerkung zur Methode 3 von Gerd:
Die ist nicht 100% äquivalent zu den von mir zur Diskussion gestellten Methoden.
Die Eventschleife hängt ja solange bis ein Event kommt. Aus dem Grund wird bei Aktivierung von 'Stop' die Schleife nicht sofort abgebrochen sondern erst wenn das nächste timeout-Event kommt. Bei 500 msec noch nicht tragisch, aber ärgerlich wenn man z.B. nur alle 10 sec. triggert.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Event Case Ignoriert Tastendruck wenn in Gegenwart eines anderen "Leeren" Event Case Ksanto 8 6.784 23.10.2017 09:08
Letzter Beitrag: Ksanto
  Drei Queues in einer While-Schleife mit case-Struktur EinVolvic 12 11.285 17.05.2017 20:25
Letzter Beitrag: EinVolvic
  Probleme seit einfügen einer For-Schleife JUON 7 5.220 14.02.2017 18:01
Letzter Beitrag: TR61
  Rechenzeit einer Schleife pro runde bekommen aidinnikoo 1 3.329 30.11.2016 13:53
Letzter Beitrag: GerdW
  Dauer einer Schleife berechnen Marius89 3 5.726 31.10.2016 09:24
Letzter Beitrag: jg
  Ansteuern einer Case Struktur mit for-Schleife berlinfatih 10 8.535 22.04.2016 05:25
Letzter Beitrag: berlinfatih

Gehe zu: