免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2066 | 回复: 2
打印 上一主题 下一主题

[C] 线程比进程得效率真得有提高吗 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-04-28 12:07 |只看该作者 |倒序浏览
线程比进程消耗得资源少,但是线程得同步加锁又有一些开销。
运用线程,真得能提高程序的效率吗?
什么情况用线程,或者线程池?

论坛徽章:
0
2 [报告]
发表于 2008-04-28 12:13 |只看该作者
进程间通信的开销也不少啊。

论坛徽章:
0
3 [报告]
发表于 2008-04-28 12:48 |只看该作者
通常多线程的应用不是为了提高运行效率,而是为了提高资源使用效率。比如你的应用程序需要访问网络,因为网络有延时,如果在界面线程访问,那么在网络访问期间界面将无法响应用户消息,这是就应该使用多线程。  
   
如果是单CPU,而且程序使用的资源仅仅是在内存和CPU,从运行指令上比较肯定单线程要比多线程精简;时间的话,理想状况可以认为单线程要比多线程时间短,但是实际情况很难讲,因为Windows下是多任务的,每一时刻CPU的使用情况都有不同;程序代码经过编译器编译也可能是优化过的;CPU对Cache的命中率也是随机的。所以精确的比较其实很难实现。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP