From http://msdn.microsoft.com/en-us/library/bbx2eya8.aspx http://msdn.microsoft.com/en-us/library/bbx2eya8.aspx看起来,这种类型的套接字使用多个线程,但从我的想法来看,异步套接字可以而且应该在单线程(或最少有限数量的线程)中运行,因为它们只是来自工作状态机的回调就像智能调度程序一样。
我的问题是:异步套接字是否会产生与连接一样多的线程,或者无论应用程序处理多少个连接,都会产生多少线程的上限。
是和不是。一切real工作由 TCP/IP 驱动程序堆栈完成。它可以轻松处理多个不完整的 IRP 请求。当其中一个完成时,会在线程池线程上触发 APC,该线程最终会调用完成回调。底层操作系统对象称为“I/O 完成端口”,您可以在此处阅读更多相关信息SDK文章 http://msdn.microsoft.com/en-us/library/aa365198%28VS.85%29.aspx.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)