I'm writing a multithreaded application in C on Windows 7, using the DAQmx 9.6 API and the USB-6509 device. This project requires that we constantly monitor multiple lines on the 6509 for digital input, using the change detection feature of the device. We also need to write digital output without having to stop monitoring the input lines. It is very important that the input lines be continuously monitored during the entire course of the project.
From reading the DAQmx manual, it seems that it is impossible to do a digital read at the same time that a digital write is occurring, even if these tasks are run in different threads. (Likewise I understand it is impossible to have multiple digital input tasks running simultaneously.)
It seems that it would be possible to start the task for the read (configured with change detection), pause the read, start the write task, pause the write task, then re-start the read task. But--and this is the important part--during the time the write task was running, is it possible to configure it so the read task will still monitor the lines, even if it just stores the data in the buffer during these periods? The main thing is that data not be lost.
Thank you,
Danielle