|
1
6
每当您打开一个套接字时,它都与选择器相关联。使用单个线程轮询该选择器。无论何时,只要子线程到达,将继续执行轮询操作,并且将关闭子线程。 这样,每个并发操作只需要一个线程。打开但空闲的插座不会绑住螺纹。 |
|
|
2
4
有了IO完成端口,您就可以让操作系统来管理轮询,这使得操作系统可以利用NIC驱动程序支持进行非常高级别的优化。 几年前,Len Holgate在Codeproject上写了一个关于IO完成端口的ECElent系列: http://www.codeproject.com/KB/IP/jbsocketserver2.aspx 和 我找到了一篇关于.net IO完成端口的文章(但还没有读过) http://www.codeproject.com/KB/cs/managediocp.aspx
|
|
3
2
如果你直接使用C++和Win32,那么我建议你读一下重叠的I/O和I/O完成端口。我有一个免费的C++,IOCP,客户机/服务器框架,完整的源代码,请参阅 here |