01-30-2007 12:37 PM
01-30-2007 01:05 PM
References are not pointers to memory blocks or to variables, but to front panel objects. Using references and property nodes to read and write the values of controls forces LV to execute the code in the UI thread, which makes it slower. Additionally, it forces LV to update the display, making it even slower.
There are several methods for communication between different VIs such as globals, LV2 style globals (also called functional globals and several other names), queues, notifiers and some others. It is important to note that since LV doesn't have variables in the classic sense (the wires serve as the variables) you should be careful to avoid race conditions. Searching for "globals" or "lv2 globals" should give you some more details.
To learn more about LabVIEW, I suggest you try searching this site and google for LabVIEW tutorials. Here, here, here, here and here are a few you can start with and here are some tutorial videos. You can also contact your local NI office and join one of their courses.
In addition, I suggest you read the LabVIEW style guide and the LabVIEW user manual (Help>>Search the LabVIEW Bookshelf).
01-30-2007 01:49 PM
TST,
I've been wondering why the functional globals are also referred to as "LV2" globals? Is this a concept that was introduced in Labview 2.0? Or does it refer to something else?
01-30-2007 02:01 PM
@Ravens Fan wrote:
Is this a concept that was introduced in Labview 2.0?
That's exactly the reason.
The "official" name is usually either LabVIEW 2-style global or Uninitialized Shift Register global.
01-30-2007 02:04 PM
01-30-2007 02:14 PM
Tst,
Thank you for the compliment.
I started with LV 7.1 about a year and a half ago with Basics 1&2. I took Int. 1&2 about 6 months ago. It amazes me how powerful of a programming language LV can be. I've found this forum to be of a very high quality, and the enthusiasm of you and the other "high bar" people is impressive. I feel like I am able to learn a lot of new concepts by perusing the threads whenever I can.
I'm sure it won't be long before you get that new red bar in the middle.
-Bill
01-30-2007 03:29 PM
@Ravens Fan wrote:
I've been wondering why the functional globals are also referred to as "LV2" globals? Is this a concept that was introduced in Labview 2.0? Or does it refer to something else?
I am no historian, but I thought that LabVIEW 2.0 did not have support for global variables as we know them today, so you had to manually implement their functionality in code. The easiest way being something we now call a LV2 style global.
(Maybe I am wrong. I started with LabVIEW 4.0. Any clarification would be welcome.) 😉
01-30-2007 03:43 PM