02-24-2008 06:57 AM
02-25-2008 06:25 PM
Hi Pnt,
This seems like a valid product suggestion. I've been perusing the forum today and noticed a number of other users running up against the same thing.
Feel free to visit our Product Suggestion Center in order to submit that suggestion.
02-26-2008 01:43 PM
02-27-2008 12:39 AM - edited 02-27-2008 12:40 AM
Ben
I don't think the overhead you mention, will be significant. For example take the local variables. For small amount of data, they are way more faster than property nodes (property node: value).
The mechanism for update front panel exists (local variables), they could just add the property nodes.
The solutions you suggest, assums that the property nodes can be gathered all together. The way, i suggested above, can be implimented without additional coding for the user, just right clicking on a property node.
Of course i am not a NI engineer.... just a thought i had...
Thanks both for the replies
02-27-2008 02:50 AM - edited 02-27-2008 02:52 AM
First, not all property nodes force a UI thread switch. For properties of user interface objects of course this is true. Also for some VI Server functionality in general such as Open VI Refnum and such to avoid race conditions in the implementation of those functions.
@Pnt wrote:
Ben
I don't think the overhead you mention, will be significant. For example take the local variables. For small amount of data, they are way more faster than property nodes (property node: value).
The mechanism for update front panel exists (local variables), they could just add the property nodes.
The solutions you suggest, assums that the property nodes can be gathered all together. The way, i suggested above, can be implimented without additional coding for the user, just right clicking on a property node.
Of course i am not a NI engineer.... just a thought i had...
Thanks both for the replies
Message Edited by Pnt on 02-27-2008 08:40 AM
02-27-2008 07:02 AM
Rolf wrote:
not all property nodes force a UI thread switch. For properties of user interface objects of course this is true
02-27-2008 12:49 PM
If you mean with not visible, objects that have been hidden: No! If you mean objects that have no UI component in any way (the ominous scripting) then I believe yes sometimes. For VIs for instance that is not a trivial thing to answer. Since it has a visible front panel, and also interfaces with the excution system which needs to be protected from race conditions too.
@Pnt wrote:@ Rolf wrote:
not all property nodes force a UI thread switch. For properties of user interface objects of course this is true
Does this mean that property nodes, for objects that are not visible executes really fast, as their is no drawing, and no switch to UI thread ?
09-08-2008 02:42 PM
Rolf was previously correct when he stated that "A single property node will update all of its properties before triggering the actual control update on screen" for older versions LabVIEW 8, but in LabVIEW 8.5.1 I am now finding that every property changed in a single property node triggers a control update on the screen. Specifically, I have observed that setting the XScale.Minimum, XScale.Maximum, YScale.Minimum, and YScale.Maximum properties in a single XYGraph property node results in not one, but four, screen refreshes, dramatically hurting performance in a 15-step "zoom" operation I programmed. What used to be a smooth zoom-in effect, is now a slow, choppy, disorienting effect as each scale parameter is changed in sequence 15 times.
I know that a workaround is to insert a Defer Panel Updates vi property node before and after the xygraph property node, but this adds considerable clutter to my code and I hope that the behavior of property nodes will be restored to their previous behavior in a future release. Does anyone know whether the undesirable behavior persists in 8.6? I didn't see this mentioned in the list of fixes.
Larry Stanos
09-08-2008 03:22 PM
Larry Stanos wrote:Rolf was previously correct when he stated that "A single property node will update all of its properties before triggering the actual control update on screen" for older versions LabVIEW 8, but in LabVIEW 8.5.1 I am now finding that every property changed in a single property node triggers a control update on the screen. Specifically, I have observed that setting the XScale.Minimum, XScale.Maximum, YScale.Minimum, and YScale.Maximum properties in a single XYGraph property node results in not one, but four, screen refreshes, dramatically hurting performance in a 15-step "zoom" operation I programmed. What used to be a smooth zoom-in effect, is now a slow, choppy, disorienting effect as each scale parameter is changed in sequence 15 times.
I know that a workaround is to insert a Defer Panel Updates vi property node before and after the xygraph property node, but this adds considerable clutter to my code and I hope that the behavior of property nodes will be restored to their previous behavior in a future release. Does anyone know whether the undesirable behavior persists in 8.6? I didn't see this mentioned in the list of fixes.
Larry Stanos
Hi Larry,
This is the first I have heard about this changed behaviour.
Would you please provide a stripped-down example that demonstrates your observation?
If what you have reported is true, I , we, EVERYONE would like to see that fixed ASAP.
Ben
09-09-2008 09:36 AM
Ben,
Attached is a vi demonstrating the issue with multiple front panel updates triggered by a single control property node.
Larry