LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Static VI reference of reentrant VI

Solved!
Go to solution

Is it possible to use a static VI reference to dinamically launch a VI as reentrant?

I found this old post, http://forums.ni.com/ni/board/message?board.id=170&message.id=120367, the user found a workaround but it's ugly, isn't it

Message Edited by Snamprogetti on 11-03-2009 02:29 PM
Message Edited by Snamprogetti on 11-03-2009 02:30 PM
0 Kudos
Message 1 of 5
(3,446 Views)
Solution
Accepted by Snamprogetti

The last snapshot in your link does show the best way to invoke an instance of a reentrant VI dynamically. The one thing I would change from that is to use the VI Name property instead of the VI Path property to wire into the Open VI Reference. You can use just the VI name if the VI is in memory, which is more efficient. Since you have a Static VI Reference, the VI will definitely be in memory.

 

I agree it's a little ugly. Personally, I created a subVI to hide the ugliness and make it feel more straightforward! 🙂

Message Edited by Jarrod S. on 11-03-2009 08:01 AM
Jarrod S.
National Instruments
Message 2 of 5
(3,426 Views)

In LV 2009 it is now possible for a VI to directly call itself.

 

Reentrant.PNG

 

Ben

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
Message 3 of 5
(3,422 Views)

Ben wrote:

In LV 2009 it is now possible for a VI to directly call itself.


I learnt this thing new today. Thanks a lot Ben.

Message 4 of 5
(3,415 Views)

ben,

 

That is grt. So no more "you cannot use "sub.vi" recursively" message eh? nice

Message 5 of 5
(3,370 Views)