DIOCP 小白精简版(YxdIOCP)

YxdIocp (DIOCP修改版)

 

SVN:  https://github.com/yangyxd/YxdIOCP

 

【特别说明】
本源码由YangYxd(音儿小白)以网友天地弦的DIOCP为基础修改优化而来。YxdIocp与DIOCP使用方式略有不同,不完全兼容!!
我会接收大家提交的BUG并尽快修复,但不负责解答任何使用方面的问题。实际上代码已经有比较多的注释,开源并不等于作者需要
免费给大家做客服解答各种问题。开源的目的一是让代码尽快成熟稳定,二是丰富行业资源和活力。“拿来主意”虽说比较快捷
省事,但并不值得提倡,有问题张口就问不是个好习惯。

【当前版本】
2015.07.31.001
【主要更改】
– ———————————–
– 2015.07.31
– ———————————–
* 优化TIocpUdpServer服务,解决退出时内存泄漏问题
* TIocpTcpSocket优化和加强,增加两个用来判断内核接收缓冲区状态的属性:RecvBufferIsEmpty、RecvBufferSize,
增加几个Read函数,增加Seek函数,修改Connected属性的算法(速度变慢了,但保证正确性)
+ TIocpClientContext增加BindIP和BindPort属性,可查看当前连接的本机IP地址(服务器多IP时可判断客户端是与那个IP建立的连接)
+ 增加TIocpTcpSocketPool连接池,自动管理TIocpTcpSocket。
+ 增加TIocpTcpClientProxy TCP 客户端代理服务,帮助实现服务器间通讯、数据转发。
* 修复TIocpHttpRequest.DecodeParam函数存在的两处BUG
* 其它细小优化,增强稳定性。
* 感谢:Huixch(Http服务BUG),  仓井很空(2543818374, 修改IocpTcpSocket和Proxy的建议和测试)
– ———————————–
– 2015.07.19
– ———————————–
+ HTTP模块增加Pipe支持
* 优化自动踢除死连接功能, 增加KickOutInterval属性
* 优化TIocpTCPSocket,增加ConnectTimeOut属性
* 其它细小优化调整
– ———————————–
– 2015.06.12
– ———————————–
+ 增加UDP服务
+ 增加Demo UDPEcho
* 优化HTTP服务
* 优化UDPSocket
– ———————————–
– 2015.05.27
– ———————————–
+ 加载HTTP服务,增加表单提交支持,可上传小文件。
HTTP模块主要功能:
1. 支持标准Http访问服务
2. 支持局部传输
3. 支持文件下载,断点续传
4. 支持表单提交
5. 支持GZip压缩传输
– ———————————–
– 2015.05.26
– ———————————–
* 修复TIocpCustomContext中使用内存池Push时未加锁引发的严重BUG。
* 优化HTTP服务。
+ 同步DIOCP在TIocpConnection中将请求加入队列,以免连续多个请求时产生多线程处理一个连接,引发问题。
– ———————————–
– 2015.05.21
– ———————————–
* 修复TIocpTcpCodecServer解码流程中的BUG。
* 优化HTTP服务
+ 增加超时自动踢除功能
– ———————————–
– 2015.05.20
– ———————————–
* 修复多处BUG。如句柄数问题。
* 修复HTTP服务多处BUG
+ HTTP服务增加文件下载功能,支持超大文件传输。
– 将YxdHash、YxdStr精简出IOCP专用版本
+ 添加YxdIocp.dbk,可直接安装成控件
– ———————————–
– 2015.05.15
– ———————————–
* 简化使用接口。使用时只需要引用 iocp.pas 单元即可。
* 去除重复代码。
* 使用了一些自己编写的新类替换掉原来的类似模块,如 TIocpStream, TIocpHttpServer 等
* 用法更简单了
* D2007下调试通过,其它版本IDE暂未测试。

【感谢】
感谢DIOCP原作者天地弦,以及DIOCP官方群、QDAC官方群所有参与本项目测试、修改的朋友。

【注意事项】
您在使用中发现任何BUG、更改意见等请及时联系我们,不胜感激。
使用本源码时您需要自行承担一切后果,作者和项目组不为此承担任何法律责任。
您可以任意复制、更新本源码,但请注明来源,或在您的软件特定位置标注说明。

【联系我们】
yangyxd QQ: 2514718952
原作者天地弦QQ: 185511468
DIOCP 官方群: 320641073
QDAC 官方群: 250530692

【网站】
yangyxd blog: http://www.cnblogs.com/yangyxd
DIOCP 官方网站: http://www.diocp.org
QDAC 官方网站: http://www.qdac.cc

 

【下载】
百度网盘: http://pan.baidu.com/s/1kTKgHoj
提取密码: ma5w

分享到:
  1. 提交一个2015.07.19.001版本的Bug,就是TIocpHttpRequest.DecodeParam在处理POST过来的参数的时候会丢掉最后一个参数……