Quantcast
Channel: LabVIEW topics
Viewing all articles
Browse latest Browse all 69682

Single call of "Open VI Reference" loads multiple clones of reentrant VI?

$
0
0

 

Fideling around with asynchronously calling reentrant VIs I observed following effect: after a single call of "Open VI Reference" with option "x40" (simultaneous reentrant calls) 5 clones of the reentrant VI to call showed up in the LabVIEW Taskmanager. This is easy to reproduce using the "Asynchronous Call and Collect" example shipped with LabVIEW:

- Change the order of elements in the "Pass option 0x40?" array on the left.

- Insert a breakpoint right after the call of "Open VI Reference"

asyncall_xampl.png

- open "LabVIEW Task Manager"

LVTaskmanager_beforun.png

- run the VI and refresh Task Manager view (F5)

LVTaskmanager.png

I tested it with LV2014SP1 and LV2016 with the same result.

 

I'm curious, if this is wanted behaviour!? First I thought LV loads a bunch of clones for performance reasons. However a second call to "Open VI Reference" while the first asynchronously called VI is still running doesn't make use of the clones already in memory, but brings up another 5 of them.

 

In contrast using "Open VI Reference" with the old school option "x08" and the "Run VI"-InvokeNode only a single clone appears in the task manager.


Viewing all articles
Browse latest Browse all 69682

Latest Images

Trending Articles



Latest Images

<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>