Jump to content

Recommended Posts

  • 2 weeks later...

If I want to have lossless data for processing but also want to display data on the GUI then I simply have a processor loop with a queue and a display loop with notifier and the producer loop feeds both. This means copying some of the data, but usually the not the huge part of it that has to be processed. If the GUI state depends on processing the data, some GUI updates go into the data processor loop, so it's not an unstained arcitecture.... But I try to keep the number of GUI elements updated from the processor loop as low as possible, and also I try to use the terminals of the indicators instead of property nodes.

So far it has worked for me quite stably even if any of the loops became slow or laggy. Though in my system GUI input is never affected by the data or processed data.

Link to comment

Being able to combine your data processing, and GUI processing into a single loop is sometimes useful to reduce complexity.  However, plenty of LabVIEW developers intentionally keep those two things separate.  I've of the opinion that as long as you are very confident that the work being done is short, and won't keep the UI from locking up, then this approach is fine.  Of course rarely can I predict how large an application might grow and how much of an impact this will have on the UX.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.