我对IO完成端口完成时实际发生的事情感到有些困惑.
我假设Win API允许访问IOCP队列,该队列能够以某种方式对具有特定句柄的回调引用进行排队(或堆栈)(比如说套接字).
当Windows从NIC接收到中断时,它会在某个时刻到达NIC的IOCP队列并在其自己的(IOCP)线程池上执行回调.
我的问题是,来自线程池的线程是在接收到中断时产生的,还是在调用Win API时实际产生的,有效地使线程处于等待状态,直到它被IOCP唤醒队列?
编辑:
我发现了这个:http://msmvps.com/blogs/luisabreu/archive/2009/06/04/multithreading-i-o-and-the-thread-pool.aspx其中是状态:“每当该操作完成时,它将在该I / O完成端口上对数据包进行排队.然后该端口将继续并使用线程池的一个线程来运行您指定的回调. “
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。