07-16-2008 10:08 AM
07-18-2008 12:03 PM
Ok, a bit more information:
The VI has multiple while loops running in parallel, each of which has a "Wait" block in it for timing. It appears that when using the "dark" runtime engine, the "Wait" blocks sleep the entire execution thread, not just the loop in which it is contained (a la the Wait block in the RT Module).
Since the Timed Loop structure is apparently not available in Linux, and "Wait" and "Wait Until Multiple" do not have the desired function, I am at a bit of a loss as to how I can do parallel timed loops.
-Neil
07-23-2008 10:11 AM
07-23-2008 11:20 AM
Raajit,
I am using the Full Development version of LabVIEW 8.5.1 with the Application Builder (also version 8.5.1). The data transfer over UDP is minimal: 4 packets of 20-40 bytes each, each sent at 10 Hz. I am testing with a direct connection between the two computers, and there is no traffic in the "return" direction.
I am nearly certain that the issue is in how the "Wait" blocks are handled, and not specifically related to my DAQ hardware or UDP. For instance, if I delete all but one loop, and put ten 100-ms waits in that loop (not connected to anything else or in a flat sequence, etc.), the loop executes at ~10 Hz when run from LabVIEW or compiled with the standard run-time engine, but runs at ~1 Hz when run with the "dark" run-time engine.
For the time being, I have bypassed this issue by combining some of the loops, and separating the remaining loops into multiple executables that I run concurrently from a script. This is an OK solution for the time being, but does not accommodate data exchange between the loops.
I have also submitted this as a support request, and will post if a solution is found.
-Neil
07-29-2008 04:29 PM - edited 07-29-2008 04:29 PM