我需要在bulk, interrupt和isochronous端点上同时将传入和传出请求入队。我能期望来自这些请求的所有回调一个接一个地到来吗?或者可以期待同时有多个回调?
发布于 2020-05-17 22:31:19
它们应该在相关处理函数的set的dispatch queue上串行传入。
因此,如果您将所有处理程序函数设置为同一队列,它们将一个接一个地出现在同一线程中。这也是默认情况下发生的事情,将它们留在默认队列中,也就是kIOServiceDefaultQueueName。
DriverKit IODispatchQueue当前始终是串行的,因此一次只能在一个线程上运行。(这与常规用户空间GCD dispatch_queue_t分派队列不同,后者存在并发变量。)
至少,到目前为止,这是我的理解和经验。
https://stackoverflow.com/questions/61840751
复制相似问题