LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

Hyperthreading problem with CDAQ/NI-DAQmx

Hi Pacsoft,

To address your CVI specific questions, in general CVI invokes UI callbacks in the same thread that created the panel. Typically a program's main thread controls all the UI elements by 1) loading or creating the panel(s), 2) displaying them, and 3) running a message processing loop (RunUserInterface, or a loop with ProcessSystemEvents).  While a program executes in a callback function or in code that doesn't call RunUserInterface or GetUserEvent, CVI does not process system events and thus can't update the UI (which you mentioned seeing when callbacks take a long time).  If a particular function is overly time-consuming, it essentially "locks out" user interface updates. To allow CVI to process these updates, you can use calls like ProcessDrawEvents, ProcessSystemEvents, etc.

Just thought I would throw the CVI stuff out there.

Best Regards,
Jonathan N.
National Instruments
0 Kudos
Message 11 of 11
(774 Views)