免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: ruchong
打印 上一主题 下一主题

线程池 + epoll 简单的实现 [复制链接]

论坛徽章:
0
21 [报告]
发表于 2007-06-12 18:08 |只看该作者
原帖由 kf701 于 2007-6-12 17:56 发表
用了  epoll 就 listen 一个 listenfd,  完全没有意义的工作。

你把accept得到的每个新的 fd 都送到 线程池队列里了,
就这么一个简单的工作,却写了这么一大堆代码,汗!




说说你的想法.....
也把代码给大家看看.......

论坛徽章:
0
22 [报告]
发表于 2007-06-15 11:49 |只看该作者
我是新手,这两天看了看楼主的代码,觉的有一处有些不妥: 楼主在忙闲队列间的动态调整采取的策略是:如果闲队列没有可用的工作线程,就生成n 个新线程后,再把所有忙队列中的工作线程加到闲队列中.假如客户端是长连接的话,你的后一步操作意义不大.而楼主之所以采取这个策略的根本原因是因为楼主用了deque来封装queue类.这样的话就不能有选择的将某个工作线程从忙队列加到闲队列了.

论坛徽章:
0
23 [报告]
发表于 2007-06-25 03:24 |只看该作者
从windows 转到Linux的, 还不会 epoll

问个设计方面的问题,
看了一下代码中的头文件,几个线程类之间的关系如下:


1. 为什么发送线程没有与线程池关联? 线程池类又继承了线程类,感觉这种设计有点乱.

2. 从一般角度来看,线程池和线程有一种包含的关系,为什么不是下面这种形式?



或者 将线程类Thread, 做成抽象类,ThreadPool 再与之关联/依赖? (偷下懒,没画图)

[ 本帖最后由 antonym55 于 2007-6-25 10:26 编辑 ]

论坛徽章:
0
24 [报告]
发表于 2007-06-25 10:13 |只看该作者
原帖由 antonym55 于 2007-6-25 03:24 发表
从windows 转到Linux的, 还不会 epoll

问个设计方面的问题,
看了一下代码中的头文件,几个线程类之间的关系如下:


1. 为什 ...



谢谢你的建议, 但是你画的图看不到。
方便的画能不能发到我的email里 worm_gzm@yeah.net

谢谢........

论坛徽章:
0
25 [报告]
发表于 2007-06-25 10:34 |只看该作者
原帖由 ruchong 于 2007-6-25 10:13 发表



谢谢你的建议, 但是你画的图看不到。
方便的画能不能发到我的email里 worm_gzm@yeah.net

谢谢........



已经编辑了一下
原来的看不到,可能是被GFW了

[ 本帖最后由 antonym55 于 2007-6-25 11:45 编辑 ]

论坛徽章:
0
26 [报告]
发表于 2007-06-30 19:00 |只看该作者
特地到windows中生成了一个chm 文档, 发上来,供需要的人参考


全部下载后解压
cat x0[0-5] |tar zxvf -

x00

190 KB, 下载次数: 88

x00

x01

190 KB, 下载次数: 51

x01

x02

190 KB, 下载次数: 51

x02

x03

190 KB, 下载次数: 59

x03

x04

190 KB, 下载次数: 50

x04

x05

6 KB, 下载次数: 57

x05

论坛徽章:
0
27 [报告]
发表于 2007-08-18 22:14 |只看该作者
这个代码我有个疑问,你开了一个LISTEN线程,开了N个RECV线程,还有些其他线程,那么请问,如果有个CLIENT过来连接服务器,那么你怎么知道他过来后走的是服务器的哪个线程,万一过来后走的不是LISTEN线程呢??原谅我的愚昧,请教大虾

论坛徽章:
0
28 [报告]
发表于 2011-02-22 21:51 |只看该作者

论坛徽章:
0
29 [报告]
发表于 2011-02-23 09:56 |只看该作者
这个Server并发量怎么样 支持多少长连接

论坛徽章:
0
30 [报告]
发表于 2011-05-17 01:57 |只看该作者
为啥后来没有更新了?还有几个问题也是我的疑问呢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP