07-27-2005 08:22 AM
07-27-2005 08:26 AM
07-27-2005 08:32 AM
07-27-2005
08:35 AM
- last edited on
01-29-2025
04:03 PM
by
Content Cleaner
The block diagram executes only by the order of the nodes. If two objects on the diagram have a wire connecting them, the object the wire is coming out of will "execute" first and only once it has finished execution, the resulting data will "travel" through the wire to the other object. In general, the big rule of data flow is "A piece of code will execute only once all of its inputs have recieved data". You can't control when it will start executing, because that's done by the scheduler, but you can determine the order of execution.
Now, if two pieces of code are not connected at all, they will execute in parallel. If you want to see the actual execution, turn on Highlight Execution (the light bulb button). This will run the VI in "slow motion" and allow you to see the data flow through the wires.
It is considered good practice to order a diagram in a left-to-right, up-to-down fashion because it makes it readable, but that does not determine the order of execution.
07-27-2005 08:39 AM
07-27-2005 08:40 AM
Ditto Dan and tst.
See attached.
Follow tst's siggestion and watch this code in execution highlighting mode.
Ben
07-27-2005 08:46 AM
Hi Novatron,
The patterns you observed are secondary to the data flow paradym. This part of the behaviour is subject to change from LV version to LV version. In fact hyperthreading has thrown even more complications into the mix. So, the first and universal rule is data flow. After that the behaviour depends on the flavor of LV you are using.
Ben