LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Register for events causes freezes if used in more than one event structure



@craig S. wrote:

Sorry, I've been really busy with the beta and haven't had time to devote to this until now, as it requires a rather lengthy explanation.

[...snip...]

Hi Craig,

Thanks so much for this detailed description.  For advanced users, an understanding at this level is extremely useful in optimization and architecture design (as well as knowing if quirky behavior is a feature or a bug :)).

I'd love to see this information make it into the LabVIEW Wiki -- do you have any objection to repurposing the content of your posting, there?

Thanks,

-Jim
0 Kudos
Message 31 of 39
(4,744 Views)

I'd love to see this information make it into the LabVIEW Wiki -- do you have any objection to repurposing the content of your posting, there?

Great suggestion! 🙂
--
Tomi Maila
0 Kudos
Message 32 of 39
(4,734 Views)


@Jim Kring wrote:

I'd love to see this information make it into the LabVIEW Wiki -- do you have any objection to repurposing the content of your posting, there?



Hi Jim,

Please feel free to repost the info on the Lava LabVIEW Wiki or wherever else it may be useful.

--Craig

0 Kudos
Message 33 of 39
(4,726 Views)


@craig S. wrote:

...
if every Event structure had a separate queue per event, it would be very hard to maintain the rule that events are handled by the Event structure in the order they occur.  It's not hard to see that this is an unworkable idea.
...


I agree that it might not be as easy to maintain the rule that events are handled by the Event Structure in the order that they occur (is that a strict requirement that cannot be broken in special configurations/instances?) and I don't see how it is an unworkable idea.

If each an event structure (dynamic registration) had a seperate queue per event, and a single, additional queue used only for event ordering, then it would be possible to manage each seperate event queue.  If a queue was bounded with overwriting allowed (a lossy queue) then you could define one of two configurable behaviors:
1) Events are processed in the order that they occur.  This is achieved by deleting the oldest reference to that event in the event ordering queue and enqueing the new event reference to the back of the event ordering queue.

2) Events are allowed to cut in line. Do not enqueue a new reference in the event ordering queue -- simply overwrite the events in the event queue.  This means that the oldest event is overwritten and each event bumps up in line to the location where the previous event was located.
I think that just providing these two options would be enough for 99% of use cases.  And, I think that the implementation is far from unworkable.
Message 34 of 39
(4,669 Views)

Just ran across this incredibly-useful and informative (!?!?!) string.  Has it been posted on the LabVIEW Wiki?  [A simple search for "Events" failed to find it ...).

 

Bob Schor

0 Kudos
Message 35 of 39
(3,098 Views)

Maybe the "s" was an issue?

 

It was tagged see here.

 

 Ben

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 36 of 39
(3,093 Views)

And for those curious students of LV, this thread was linked in the Interesting stuff" thread. That thread has a lot of very nice "did you know this" links.

 

Ben

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 37 of 39
(3,078 Views)

Ben,

     Maybe we're not saying the same thing.  In the Post to which I was replying, permission was given to put Craig's info into the LabVIEW Wiki, labviewwiki.org.  When I looked there, I could not find it using either "Event" or "Events" as the search string.  I'm guessing it hasn't made it into this repository (though it is nice to see that it has been "tagged" in the NI forums).

 

BS

0 Kudos
Message 38 of 39
(3,053 Views)

Bob,

 

no-one is stopping you to add information to the LabVIEW wiki!

 

The web is ours.

 

Ton

Free Code Capture Tool! Version 2.1.3 with comments, web-upload, back-save and snippets!
Nederlandse LabVIEW user groep www.lvug.nl
My LabVIEW Ideas

LabVIEW, programming like it should be!
0 Kudos
Message 39 of 39
(3,028 Views)