写完,调完,IO 完成端口模型
来源:互联网 发布:java调用微信支付接口 编辑:程序博客网 时间:2024/06/08 03:43
io完成端口,Io Completion Port,称为接口更合适,号称是windows平台上处理IO最快的模型,windows内部也是这样处理的。
IO传输一般来说有阻塞、非阻塞、多线程阻塞、完成端口等多种模型,多线程阻塞是linux中常用的,windows中常用非阻塞即消息制,但是都有开销大,处理高吞吐的时候心有余而力不足的缺点。
一般来说,一台机同时连接2000以上就要用到完成端口了,这是号称windows上系统级处理能力最快的模型了。
原理比较简单就是把多线程阻塞型稍加改变,本来是遇到连接就起线程,而现在先起一定数量的线程,再遇到连接的时候,线程可以直接处理,而无须干预。至少可以比多线程阻塞快一点。
写起来倒也不复杂,用一个主线程先生成一定数量的线程,然后让它们等着,主线程阻塞接受连接,然后绑定一下完成端口,原先的线程就自动开始处理了。在处理数据时使用Overlapped重叠模式,则可以提高性能。
代码可以参见我的项目:www.kicoy.com。
有关完成端口的资料:http://blog.csdn.net/sodme/category/13790.aspx
http://www.allife.org/index.php?job=art&articleid=a_20051227_140933
高性能网络论坛:http://groups.google.com/group/dev4server?lnk=li
- 写完,调完,IO 完成端口模型
- winsock IO模型 完成端口
- socket IO完成端口模型详解
- winsock IO 模型之五:完成端口
- socket IO完成端口模型详解(例子)
- WinSock IO模型五: 完成端口
- 可伸缩的IO完成端口服务器模型
- 可伸缩的IO完成端口服务器模型(IOCP)
- Windows socket之IO完成端口(IOCP)模型开发
- 可伸缩的IO完成端口服务器模型(IOCP)(中文版)
- Windows socket之IO完成端口(IOCP)模型开发
- Windows socket之IO完成端口(IOCP)模型开发
- Windows socket之IO完成端口(IOCP)模型开发
- Windows socket之IO完成端口(IOCP)模型开发
- 重叠IO-完成端口
- IO完成端口
- IO完成端口
- 重叠IO-完成端口
- 尤利乌斯·凯撒
- GUI测试的思考
- 扩展微软DDK中的NDIS IM驱动的功能:添加一个DeviceIoControl接口
- unixware7.1.1命令全集
- 坐在火山口上的ajax,html
- 写完,调完,IO 完成端口模型
- 代码自动生成.
- p2p之rfc2663
- Linux内核模块和驱动的编写
- 使用完成端口模型做一个微型静态页面HTTP Server
- 2006年Eclipse大奖获得者
- 压栈法/词法分析
- 临界区实现内部锁
- 关于孤独