高分求解 谁能描述一下leader/follower 模式的线程池 ???

flashboy 2005-07-04 10:17:56
如题目!!
...全文
250 6 打赏 收藏 举报
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
whwjn 2006-04-16
mark
  • 打赏
  • 举报
回复
flashboy 2005-07-05
i see!!谢谢!!
  • 打赏
  • 举报
回复
daydaymissyou 2005-07-04
gz.............................
  • 打赏
  • 举报
回复
elssann 2005-07-04
完成端口本身就是一个L/F的线程池模型。

比如现在创建了2个完成端口线程,,当线程1从GetCompletionQueue这里返回后,如果线程1的处理过程没有超过某个时间段(这个时间段具体多大不清楚),而是很快就返回继续GetCompletionQueue,那么下一次从GetCompletionQueue这里返回的还将继续是线程1,也就是说,OS会一直让线程1来从GetCompletionQueue这里返回,以减少线程的CONTEXT切换代码。。。

如果线程1的的处理过程比较长,那么系统会让线程2从GetCompletionQueue这里返回的,,即使你设置在IOCP上同时只能运行一个线程。。。


简单地描述:线程池某个时候有个LEADER,下面有一群FOLLOWER,当LEADER处理的时候,发现自己可以完全应付目前的任务,很快就可以完成,那么他不会让下面的FOLLOWER去干活的,而是让他们休息。当新来了一件任务,LEADER发现自己要处理这个任务需要比较长的时间,那么他就自动把自己降低为FOLLOWER去处理这新的任务,然后从FOLLOWER中产生一个新的LEADER,


好处就是减少context switch和高速患存的更新代价。
  • 打赏
  • 举报
回复
qrlvls 2005-07-04
Google 就好
http://www.google.com/search?ie=UTF-8&oe=UTF-8&q=leader+follower+thread+pool
http://www.zeroc.com/vbulletin/archive/index.php/t-371.html
  • 打赏
  • 举报
回复
Juchiyufei 2005-07-04
UP
  • 打赏
  • 举报
回复
相关推荐
发帖
网络编程
加入

1.8w+

社区成员

VC/MFC 网络编程
社区管理员
  • 网络编程
申请成为版主
帖子事件
创建了帖子
2005-07-04 10:17
社区公告
暂无公告