永发信息网

什么样的程序 多线程 会有问题

答案:2  悬赏:40  手机版
解决时间 2021-04-13 18:50
什么样的程序 多线程 会有问题
最佳答案
-会导致系统崩溃的不完善的程序
-破坏多线程调用规则的程序
-获得调用后不放手的程序:获得执行权限后自己不实现自己的堵塞,比如死循环等,比如需要死等其他线程提供的数据,但忘记允许其他线程能够先于自己执行的程序
-执行时间过长而会影响到其他定时需要调用的线程执行,有可能导致流式数据不能得到及时处理的线程,或者自己处理数据算法不够优化,无法完成本职工作的程序
-其他情况(很多,只有想不到没有做不到),可以通过系统联调或试运行发现排除
全部回答
ibm有个家伙做了个测试,发现切换线程context的时候,windows比linux快一倍多。进出最快的锁(windows2k的 critical section和linux的pthread_mutex),windows比linux的要快五倍左右。当然这并不是说linux不好,而且在经过实际编程之后,综合来看我觉得linux更适合做high performance server,不过在多线程这个具体的领域内,linux还是稍逊windows一点。这应该是情有可原的,毕竟unix家族都是从多进程过来的,而 windows从头就是多线程的。 如果是unix/linux环境,采用多线程没必要。 多线程比多进程性能高?误导! 应该说,多线程比多进程成本低,但性能更低。 在unix环境,多进程调度开销比多线程调度开销,没有显著区别,就是说,unix进程调度效率是很高的。内存消耗方面,二者只差全局数据区,现在内存都很便宜,服务器内存动辄若干g,根本不是问题。 多进程是立体交通系统,虽然造价高,上坡下坡多耗点油,但是不堵车。 多线程是平面交通系统,造价低,但红绿灯太多,老堵车。 我们现在都开跑车,油(主频)有的是,不怕上坡下坡,就怕堵车。 高性能交易服务器中间件,如tuxedo,都是主张多进程的。实际测试表明,tuxedo性能和并发效率是非常高的。tuxedo是贝尔实验室的,与unix同宗,应该是对unix理解最为深刻的,他们的意见应该具有很大的参考意义。 多线程的优点: 无需跨进程边界; 程序逻辑和控制方式简单; 所有线程可以直接共享内存和变量等; 线程方式消耗的总资源比进程方式好; 多线程缺点: 每个线程与主程序共用地址空间,受限于2gb地址空间; 线程之间的同步和加锁控制比较麻烦; 一个线程的崩溃可能影响到整个程序的稳定性; 到达一定的线程数程度后,即使再增加cpu也无法提高性能,例如windows server 2003,大约是1500个左右的线程数就快到极限了(线程堆栈设定为1m),如果设定线程堆栈为2m,还达不到1500个线程总数; 线程能够提高的总性能有限,而且线程多了之后,线程本身的调度也是一个麻烦事儿,需要消耗较多的cpu 多进程优点: 每个进程互相独立,不影响主程序的稳定性,子进程崩溃没关系; 通过增加cpu,就可以容易扩充性能; 可以尽量减少线程加锁/解锁的影响,极大提高性能,就算是线程运行的模块算法效率低也没关系; 每个子进程都有2gb地址空间和相关资源,总体能够达到的性能上限非常大 多线程缺点: 逻辑控制复杂,需要和主程序交互; 需要跨进程边界,如果有大数据量传送,就不太好,适合小数据量传送、密集运算 多进程调度开销比较大; 最好是多进程和多线程结合,即根据实际的需要,每个cpu开启一个子进程,这个子进程开启多线程可以为若干同类型的数据进行处理。当然你也可以利用多线程+多cpu+轮询方式来解决问题…… 方法和手段是多样的,关键是自己看起来实现方便有能够满足要求,代价也合适。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
QQ农场为啥加载到39%就停了
茶子油贵吗?
如果头发染色了,会对身体好吗?
几个粤语问题!请帮忙!
关于公务员考试
熄灭空间图标后以前的信息会不会删除掉
泰州市海螺塑钢型材经营部地址在哪,我要去那
无理数存在的意义是什么?
洪湖市荆州面点之乡毛市包子地址在什么地方,
天山打哪些宝石好?
喜欢上了初中时的女同学怎么办
求 DZ 最高 输出 FB 天赋
拓海的车在第几集坏拉 ?
经常会感觉到两只胳膊不舒服,说不出的感觉。
问道活动<天降金牛牛> 怎么找不到活动地图?
推荐资讯
南洋兄弟桶装烟 红双喜 价格是多少???
我在乎的人对我说:如果不是你,那是谁又有什
怎样才可以不掉钱啊
我交了4个月的公积金怎么只能查到2个月的?
我的宝马想刷ECU 去哪里可以刷
练了真法,还可以练八段绵不,,是先八段绵还
如何给百度做推广,怎么在百度上做自己网站的
..什么鱼儿填词语
一个数的平方根分别是2a+8和a-2,求a2+146的
为什么移动硬盘连接到电脑就死机?
雪地靴会越穿越松吗?急急急!!!
le serum regeneration 是什么意思
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?