完成端口

匿名 (未验证) 提交于 2019-12-02 23:57:01

“完成端口"利用windows内核来进行I/O的调度,是用于C/S通信模式中性能最好的通信模型,其提出的初衷是解决一个线
程一个客户端的缺点,采用少量几个线程处理和客户端的通信,消除无谓的线
程上下文切换.所谓的完成端口,其实和handle _样,是个内核对象。

完成端口的工作原理及步骤如下,

1、通过CreateloCompletionPor()创建一个完成端口,保存它的好句柄;

2、创建几个工作线程,有几个CPU就开几个工作线程,使这些线程进入等待状态;

3、当有新的socket连接时,调用CreateIoCompletionPort()将新连入的socket与创建好的完成端口进行绑定

4、当连接完成后,这些已经建立连接的socket所发送请求,都将其加入到一个公共的消息队列中,当接收完成后,通知之前事先开好的工作线程。

http://blog.csdn.net/piggyxp/article/details/6922277

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!