免费注册 查看新帖 |

Chinaunix

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

你经常使用多线程吗? [复制链接]

论坛徽章:
0
21 [报告]
发表于 2008-11-21 19:23 |只看该作者
事实上,我不怎么用多线程,我甚至不怎么写代码

论坛徽章:
1
天蝎座
日期:2013-08-25 10:27:22
22 [报告]
发表于 2008-11-21 19:54 |只看该作者
综合15楼和18楼,我觉得,你的问题在于锁的范围和粒度。

{a,b,c,d; e,f,g,h; i,j,k,l}
假如上面的集合,a,b,c,d会影响一个数据库里的相同值,e,f,g,h影响另一个相同值,i,j,k,l影响另外一个。
你在处理a,b,c,d时用锁1、e,f,g,h用锁2、i,j,k,l用锁3
这样将锁的范围缩小;
另外再将锁(例如锁1)里的粒度尽量弄小。

可能这些你都做了工作,提醒下:wink:

论坛徽章:
0
23 [报告]
发表于 2008-11-21 22:36 |只看该作者
千万不要用多线程,除非你实在无路可走,不用就达不到需求
多线程目的是性能优化,大多数情况下性能优化是邪恶的

论坛徽章:
0
24 [报告]
发表于 2008-11-21 23:10 |只看该作者
原帖由 yangsf5 于 2008-11-21 19:54 发表
综合15楼和18楼,我觉得,你的问题在于锁的范围和粒度。

{a,b,c,d; e,f,g,h; i,j,k,l}
假如上面的集合,a,b,c,d会影响一个数据库里的相同值,e,f,g,h影响另一个相同值,i,j,k,l影响另外一个。
你在处理a,b ...

这些我当然做了,但是有时候上面有些变态的或者说很不责任的要求,你没有办法......
哎,现在我体会到,多线程的意义就是不要滥用多线程

论坛徽章:
0
25 [报告]
发表于 2008-11-21 23:22 |只看该作者
星期一上班我发个线程池代码,大家以后要用的话可以参考参考.....讨厌重复发明轮子,可是不去自己做轮子,就不知道轮子是怎么转的....
不知道怎么转的,坏了就不会修.....

论坛徽章:
0
26 [报告]
发表于 2008-11-22 08:55 |只看该作者
原帖由 wishel 于 2008-11-21 22:36 发表
千万不要用多线程,除非你实在无路可走,不用就达不到需求
多线程目的是性能优化,大多数情况下性能优化是邪恶的


不同意这个观点。相反,我认为单线程在很多时候解决不了问题,或者性能很差。

论坛徽章:
1
射手座
日期:2013-08-21 13:11:46
27 [报告]
发表于 2008-11-22 11:46 |只看该作者
如果你原先单线程CPU占用比较高,那么改成多线程毫无意义,效率往往会降低的.
最好线程树=CPU内核数+1

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
28 [报告]
发表于 2008-11-22 12:09 |只看该作者
多线程肯定是好的。
只不过 C 语言自带的多线程库的层次太低,
需要程序员考虑的事情太多,
因此就需要认真设计,主要是共享数据和锁的问题,

用队列来传递数据可以简化设计,避免修改共享数据,从而提高性能和稳定性。

论坛徽章:
11
技术图书徽章
日期:2014-03-01 14:44:34天蝎座
日期:2014-05-21 22:11:59金牛座
日期:2014-05-30 17:06:14
29 [报告]
发表于 2008-11-22 14:17 |只看该作者
优秀的技术也会被滥用,包括多线程,关键是分清使用场合。转载两幅图

th1.JPG (166.94 KB, 下载次数: 47)

th1.JPG

th2.JPG (88.79 KB, 下载次数: 31)

th2.JPG

论坛徽章:
0
30 [报告]
发表于 2008-11-22 16:26 |只看该作者
原帖由 timespace 于 2008-11-22 14:17 发表
优秀的技术也会被滥用,包括多线程,关键是分清使用场合。转载两幅图


对,关键是看自己的需求,有没有必要用。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP