Non-Reentrant Actors started by themselves cannot launch subactors
ActorNR, started by itself (from the Run button) cannot launch a subactor. Happens when using a non-strict VI ref to access "Dynamic Launch Shell.vi". I think running the non-reentrant ActorNR.vi causes "Dynamic Launch Shell.vi" to break, as it theoretically can call ActorNR as a subVI. Using a strict VI ref causes "Dynamic Launch Shell.vi" to instead be reserved for execution.
Comments (6)
-
reporter -
reporter Idea: separate ActorNR.vi from Actor.vi. Rather than have parent Actor.vi call ActorNR.vi, have it message "Launch Actor" and have "Launch Actor" call an independent "Dynamic Launch Shell_NR.vi".
-
reporter Filed the locked-code bug with AQ at NI (CAR 678300).
-
reporter Also see discussion starting here.
-
reporter Workarounds 1. Rename ActorNR to something else. 2. Change to a reentrant actor
-
reporter Have reworked the ActorNR launch to use a separate "Dynamic Launch Shell". This reduces the problem significantly.
- Log in to comment
Using a Strict VI Ref prevents this problem, but causes another:
This is the bug referred to by https://labviewcoder.com/2016/07/06/quick-tip-asynchronously-launching-vis-the-right-way/
Also see discussion.