Es nützt Dir nicht viel, wenn das Sub-VI nicht direkt im Event-Case aufgerufen wird. Solange das Sub-VI nicht beendet ist, blockiert es im Haupt-VI immer die Schleife, in der es aufgerufen wurde. Du kannst also im HaupVI trotzdem nichts bedienen.
Um aus diesem Dilemma herauszukommen, sehe ich nur diese beiden Möglichkeiten:
1. Parallele Ausführung des SUB-Vis.
Es muß dazu auf dem BD frei im Raum, neben dem Hauptprogramm-Code, platziert sein. Kommunikation mit dem Hauptprogramm z.B. über Melder.
Wenn es nicht erwünscht ist, das das SubVI gleich von Anfang an aktiv ist, kann man es so machen, das es im SubVI einen Zustand "Idle" gibt. Das SubVI wird dann, wenn es gebraucht wird, nicht aufgerufen - das ist es schon - sondern von Zustand "Idle" in den aktiven Zustand gebracht - Steuerung z.B. über Melder.
2. Aufruf des SubVI über Methodenknoten.
Bei diesem Aufruf gibt es die Möglichkeit, die ansonsten defaultmäßige Eigenschaft "Warten bis beendet" auf false zu stellen. Das SubVI blockiert dann nicht. Darüber hinaus hat man über Methodenknoten eine Steuerungsmöglichkeit auf alle Bedienelemente. Diese müssen nicht mal mit dem SubVI-Ikon verdrahtet sein, ja sogar nicht mal auf dem FP sichtbar sein. Z.B ist es dann ganz einfach, das SubVI mit seinem eigenen Stop-Knopf vom HauptVI aus zu beenden, ohne dass dafür z.B ein Melder benötigt wird. Beispiel für einen solchen Aufruf: