Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

How to read large blocks of data as quickly as possible in Labview?

<p>&nbsp;Hello friends,</p>
<p>I meet a problem in reading visa &nbsp;data. It's a usb-raw device, it needs a indepent thread to read the data without any delay(Thread priority Critical). I can do this in both CVI &amp;Labview. The difference is, in CVI, I can exchange the buffer data(read by Visa-read) by exchange the pointer of the buffer, this could avoid data copy. But in Labview, how can I do this to avoid data copy which would delay the Visa-read loop?</p>
<p>PS. the data block(Buffer length) is big,512KB. And the length could not be small since it would make data loss. I have tested this. The program attached could work wihout problem, but if I try to show the data, there would be a data loss. How can I get it ?</p>
0 Kudos
Message 1 of 2
(4,474 Views)

Use a Queue to send the data to another loop that can process the data.  Have a look at the Producer/Consumer architecture.



There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
0 Kudos
Message 2 of 2
(4,423 Views)