Windows上的libusb:检查可读字节

Windows上的libusb:检查可读字节,windows,libusb,Windows,Libusb,在Windows下使用libusb(不支持轮询/选择),是否有办法检查某些USB端点上的挂起字节,即检查以下读取是否成功(并读取一个或多个字节)?我通过使用已读取的字节实现环形缓冲来解决此问题;检查挂起字节会在环形缓冲区中查找(如果为空)并在端点上执行非阻塞读取(如果有任何内容,则写入环形缓冲区),读取必须使用环形缓冲区间接寻址,而不是直接从端点读取。这对我来说是可行的,但不是很优雅。我解决了这个问题,用已经读取的字节实现了一个环形缓冲区;检查挂起字节会在环形缓冲区中查找(如果为空)并在端点上执

在Windows下使用libusb(不支持轮询/选择),是否有办法检查某些USB端点上的挂起字节,即检查以下读取是否成功(并读取一个或多个字节)?

我通过使用已读取的字节实现环形缓冲来解决此问题;检查挂起字节会在环形缓冲区中查找(如果为空)并在端点上执行非阻塞读取(如果有任何内容,则写入环形缓冲区),读取必须使用环形缓冲区间接寻址,而不是直接从端点读取。这对我来说是可行的,但不是很优雅。

我解决了这个问题,用已经读取的字节实现了一个环形缓冲区;检查挂起字节会在环形缓冲区中查找(如果为空)并在端点上执行非阻塞读取(如果有任何内容,则写入环形缓冲区),读取必须使用环形缓冲区间接寻址,而不是直接从端点读取。这对我很有用,但不是很优雅。

请查看“事件处理”下的此链接。(这是针对libusbx的,但您可能会对libusb有一些想法)。如果您谈论的是异步操作,libusb不支持该操作。请查看“事件处理”下的此链接。(这是针对libusbx的,但您可能会对libusb有一些想法)。如果您谈论的是异步操作,libusb不支持。