' schrieb:Danke für die fixe Antwort, aber das behebt mein Problem nicht.
"Ablaufinvariante Ausführung" wird wohl in meiner englischen Version (8.0) "Reentrant Execution" sein. Das bedeutet doch aber nicht, dass ich mehrere Instanzen dieser VI offen haben kann. Oder?
Hi,
doch genau das bedeudet es. Das deutsche Wort scheint mir auch nicht gerade die beste Wahl. Reentrant Execution, wiedereinkehrend oder so ähnlich.
Das heißt im klartext, du kannst ein VI wieder und wieder starten auch wenn eine ältere Instanz noch läuft. Es wird jedes mal im Speicher neue Variablen, etc.. dafür angelegt!
Während bei not-reentrant (normalen) VIs, das mehrfache starten nur nacheinander möglich ist. Kommt LabVIEW an das VI (welches bereits läuft) im Blockdiagramm wartet es bis die offene Instanz fertig abgelaufen ist und startet es erst dann. Alle Schieberegister, Speicherbelegung, etc bleiben erhalten.
.....ups war wohl zu langsam...
So und jetzt zu deinem eigentlichen Problem
du machst eine Referenz für das VI auf, hier macht er standardmäßig immer die Referenz zum
selben VI auf, du brauchst aber verschiedene für die reentrant möglichkeit!
Das machst du in dem du bei open reference eine Option mit übergibst - in der online Hilfe siehst du die Opitonen die du hast.
Das wäre passend:
0x08 Prepare for reentrant run. Reserves the target VI so it cannot be edited and if the target VI is reentrant, allocates a dedicated parallel data space for this VI reference. If the target VI is not reentrant, the function returns an error.
hoffe dir geholfen zu haben und es läuft damit.
Gruss
Uli