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!
kann ich aus einem Main-VI heraus ein SUB VI abbrechen, und zwar so, dass das MainVI weiterläuft?
Die Methode ist wahrscheinlich sehr unsauber, ich habe aber im SUB VI viele Melder, Queues und Schleifen,
die müsste ich ansonsten alle mit Timeouts etc. versehen.
Zumal das Programm auch sehr selten abgebrochen werden müsste.
Beim Ausführen von "Stopp" aus der Applikationssteuerung wird auch das MainVI beendet,
bei der Verwendung eines Mathodenkonten bekomme ich den Fehler 1000, "Das VI befindet sich in einem für diese Operation unzulässigem Zustand"
Also, empfehlen will ich das Vorgehen nicht, und ich weiß auch nicht, wie hierauf eine Exe reagiert, aber diese InvokeNode hört sich doch nicht schlecht an:
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
' schrieb:Die Methode ist wahrscheinlich sehr unsauber, ich habe aber im SUB VI viele Melder, Queues und Schleifen,
die müsste ich ansonsten alle mit Timeouts etc. versehen.
Die Methode ist definitiv unsauber. Ich rate von dieser Methode dringend ab. Wenn das SubVI abgebrochen wird, heißt das noch lange nicht, dass Queues und Melder geschlossen werden. Was ich auch sehr bezweifle ist, dass eine Queue/Melder-Operation, die gerade auf einem Endlos-Timeout hängt, abgebrochen wird.
Zitat:Zumal das Programm auch sehr selten abgebrochen werden müsste.
Sowas rechtfertigt selbst die unsaubersten Mittel nicht.
Zitat:bei der Verwendung eines Mathodenkonten bekomme ich den Fehler 1000, "Das VI befindet sich in einem für diese Operation unzulässigem Zustand"
Ein SubVI kann nur entweder per Datenfluß oder per VI-Server gestartet werden (von reentrant abgesehen). Ein per Datenfluß gestartet VI kann nicht per VI-Server (siehe "Abort VI") gestoppt werden.
Zitat:Hat noch jemand einen Tipp für mich?
Entweder einen sauberen Abbruch hineinprogrammieren (geht mit Referenzen, Userevents etc). Oder das SubVI per VI-Server starten. Dann sollte es auch mit Abort abbrechbar sein.
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Ich habe das SubVI aus dem Datenfluss heraus gestartet, daher hat wohl die AbortVI - Methode nicht
funktioniert. Ich habe ein VI noch nie über einen VI-Server gestartet, werde ich mir mal ansehen.
Wenn ich das richtig verstanden habe, dann ist die Abort - Methode generell unsauber.
Auch wenn ich das VI über einen VI - Server starte?