我正在使用USB-Hid类在C++应用程序中与我的USB设备通信。谁能告诉我,例程HidD_FlushQueue()到底是做什么的?https://msdn.microsoft.com/en-us/library/windows/hardware/ff538876%28v=vs.85%29.aspx
在发送命令之前,我使用它来刷新输入队列。我被告知这样做是为了保证输入队列是空的。
这通常工作得很好,但在某些情况下,我的程序被困在这个函数中,不会返回。我没有使用一些异步方法来访问可能会阻塞它的队列。是否有可能,问题出在USB设备的一侧?有什么建议吗?
发布于 2016-03-12 04:39:47
HID设备可以向主机发送输入报告。Windows将这些报告累积到一个队列中。HidD_FlushQueue()从队列中删除所有由Windows累积的报告。
我在我的读取线程开始时调用这个函数,我从来没有遇到过问题,尽管我的设备在收到请求之前不会发送报告。
https://stackoverflow.com/questions/35940965
复制相似问题