Quote:
|
I'm still not sure you've got an appropriate context for the way you're trying to understand things. A lot of the questions you ask are fine from a procedural point of view, but that's not really relevant to how a LabVIEW programmer should be looking at it.
|
If the only goal was learning to be a LabVIEW programmer, I would heartily agree with you. But that's not the only goal for our students. The goal is for them is to learn concepts of multitasking and what's really going on.
Quote:
|
This is a data flow language. Each function runs as soon as all of its inputs are available, and provides its outputs when it is finished. Wires carry data from one function to another, and it is the flow of data which determines which functions can run next. Groups of functions collected inside a case or while or other block must all finish before the block is satisfied. That's all you need to know in order to understand the 5ms periodic loop example.
|
Perhaps, but it's not all you need to know in order to understand even a very simple system. For example, suppose you have a VI that contains within a while loop a 5ms task that takes 1ms to execute and a 50ms task that takes 20ms to execute. Will the 5ms task run smoothly at 200Hz? That absolutely depends on how LabVIEW sets up the RTOS to do multitasking. The student cannot understand why his code doesn't work if he doesn't understand the basics of realtime task management.
Having said that, let it be known that I am an avid reader of your posts and have learned much from them, which I freely share with our programmers. A sincere thank you for you willingness to be so helpful.
~