首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

开一个线程,然后这个线程就得通知先前所有的这些线程 小弟我打开了 如何做

2012-04-24 
开一个线程,然后这个线程就得通知先前所有的这些线程 我打开了 怎么做?有一个这样的程序同时要开 几百个线

开一个线程,然后这个线程就得通知先前所有的这些线程 我打开了 怎么做?
有一个这样的程序

同时要开 几百个线程,这些线程正在通讯

然后了又开一个线程,然后这个线程就得通知先前所有的这些线程 我打开了 怎么做?

如果用共享变量的方式 那么就有 几百的循环了 这样开销太大啊 有别的方式吗?


网上搜索了哈 信号量 神马的 

可是没找到点好资料

有点迷糊 


如果有实例代码最好c



[解决办法]
一般来说,线程的个数不应该超过cpu个数的两倍,否则,效率会有所下降。
要让所有已存在的线程得到一个新创建的线程的通知,这个,通知的具体内容不明确,所以无法提供比遍历更好的方法了。
[解决办法]
几百个线程是没必要的

一般的并发服务器,udp可能只有一个或几个线程,tcp多些但通常也不会是几百个

在这种大规模并发,如果硬件跟不上或者其他地方的瓶颈没解决,对效率反而是反作用

你要做的是使用一个队列缓存用户请求,另外尽量减少单次处理时间,根本不需要“一个请求一个线程”(不少服务器编程的书都习惯玩这个概念,已经成为误导新手的大毒草了)

热点排行