盒子资源分类
UVC 高性能socket组件 for Delphi/BCB/RAD Studio 2010/XE
关键字:UVC for Delphi/BCB/RAD Studio 2010/XE
来 自:转载,LuBin
平 台:Win2k/XP/NT,Win2003
下载所需:0 火柴
深浅度:中级
完成时间:2012/3/19
发布者:142857
发布时间:2012/3/19
编辑器:DELPHI7
语 种:简体中文
分 类:数据库
下载浏览:705/15677
UVC is a BSD socket 1.1 compatible component for Delphi6+/BCB6+ and RAD Studio. Usage based on Delphi6 SocketServer But Improved and Added many Features: multiple ThreadingModel, SOCKS, state Context, Use tmRequestPerThread for 2k+ TCP Connections Uvc高性能组件,理论上万连接,采用多线程技术,可以支持2k+的TCP连接Use tmRequestPerThread 处理好上万连接轻轻松松 跟Iocp差不多 UVC用select I/O的。只是先准备一个或多个线程对server上的socket不断的循环探测是否有存在可读取的数据,有的话则在创建一个对于的线程进行读取,所以能上线多了。不像indy的select。每建立一个socket就创建一个线程。
本站原创作品,未经作者许可,严禁任何方式转载;转载作品,如果侵犯了您的权益,请联系我们 !
相关文章
相关评论
共有评论14条
当前显示最后6条评论
mlyfan
2012/3/20 10:58:38
用select的,还上万连接?还不如用窗口消息的。
lovedelphi1
2012/3/20 11:52:45
我机器上500个连接系统就挂了....
fauna
2012/3/26 23:46:54
select I/O ? 就这一点,就不可能达到IOCP的性能。就好像人两条腿跑的再快也不可能有汽车的4个轮子快一样的道理。这个机制并不先进。之前自己用socket写过,可以达到4000多连接,这货还没我自己写的好。
comanche
2012/5/22 17:51:55
发现被盒子收录了 用 tmRequestPerThread 就可以达到 10k 连接以上, 用的是线程调度, 每个 io 请求调度到一个线程去执行, 因为在线程中, 所以完全可以在事件中处理逻辑 IOCP 在没什么处理逻辑情况下简单, 并且是 windows 专用的 这个我用于自已的项目中, 最大连接达到过 5w 左右, 只是一个对 TSocketServer 的代替品, 但支持非一线程对一 socket 的模式, 也可以自已派生 TUVContext 给连接加上更多自定义属性, 也可以用 Context.Data 指向一个对像 至于最大并发数, 这个因为受到 windows 2k 个线程的限制, 所以并发是不能超过这个数的, 在线程模式用 tmRequestPerThread 时连接数可以很大, tmSocketPerThread 仍然连接数 < 2000, tmFDSetPerThread 应用于挂大连接但几乎不收数据的情况(发为主)
comanche
2012/5/22 18:04:31
select io 在非 windows 平台上是到处都是, 不知为什么 windows 下变得只认 IOCP 了 不管怎说, 刚更新了 0.64, 这段在学用 xe2, 现在可以支持 x64/ios 了, 当时如果是 iocp 写的就没办法做到了, ios 下用的是 libc 的 socket, 效果嘛我还不明确
zzzzzllllll
2012/7/23 17:43:49
坑爹货 随便写一个都比这东西效率高N多
我要发表评论
查看全部评论