|
USB IssueBulkTransfer异步模式的理解
[复制链接]
一、该函数中的第二个参数在MS自带的Print驱动中设为DefaultTransferComplete,也就是SetEvent,但是之后没有见WaitForSingleObject;
二、.\WINCE500\PUBLIC\COMMON\OAK\DRIVERS\USB\USBD\usbddrv.cpp中的IssueBulkTransfer中在异步模式下WaitForSingleObject(pWait->hEvent, INFINITE);在回调函数里SetEvent,这里的WaitForSingleObject之后就什么也没做。
我的问题是:是否设置IssueXXXTransfer为异步模式,就是将错误检测部分与数据的传输异步进行:
采集完数据之后开始WaitForSingleObject,此时另一个线程开始下一帧的采集;并且假设我们设置的等待时间足够长,从而WaitForSingleObject等待到SetEvent返回,之后开始错误检测。这样错误检测与数据采集就异步进行了
不知我的理解对不对,请各位指正
|
|