免费注册 查看新帖 |

Chinaunix

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

[Linux] 多线程真的是多个线程一起运行吗 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-12-11 20:56 |只看该作者 |倒序浏览
本帖最后由 jwnydy 于 2012-12-11 21:25 编辑

百度出来的一个答案,




不知这个回答怎么样?大侠们有没有其他更好的解释?谢谢啊

电脑是2核的,是在linux环境下

论坛徽章:
0
2 [报告]
发表于 2012-12-11 21:09 |只看该作者
这得看你是不是多核了,如果是多核的话,一个核心一个线程没压力,不过操作系统也必须支持多核

论坛徽章:
0
3 [报告]
发表于 2012-12-11 21:24 |只看该作者
回复 2# 耗资喜欢猫


    电脑室2核的,是在linux环境下

论坛徽章:
0
4 [报告]
发表于 2012-12-12 08:19 |只看该作者
反过来想,从CPU的角度想,它是不知道操作系统什么的,就是fetch -> decode -> execute,一直只干这件事。而操作系统所谓的线程,无非一个是执行的逻辑单元,切换线程只是跑另一部分逻辑单元,但对于CPU来说,一直是执行前面的过程。所以对于单个核,同一时刻只可能是一个线程在跑,对于多核/多CPU,同一时刻是会有不同线程在跑的。

论坛徽章:
0
5 [报告]
发表于 2012-12-14 10:09 |只看该作者
回复 4# Cyberman.Wu


    谢谢你给予我问题的回答,谢谢~

论坛徽章:
2
CU十二周年纪念徽章
日期:2013-10-24 15:41:34处女座
日期:2013-12-27 22:22:41
6 [报告]
发表于 2012-12-14 17:19 |只看该作者
这令人想起concurrent与parallel的区别。曾经看到解释说,前者只意味着多个过程交互进行,不一定同时;后者则严格强调同时进行。

论坛徽章:
0
7 [报告]
发表于 2012-12-14 18:44 |只看该作者
回复 6# tempname2


    嗯,谢谢你的回答

论坛徽章:
1
天蝎座
日期:2013-12-06 18:23:58
8 [报告]
发表于 2012-12-18 08:57 |只看该作者
那也得看这两个线程有没有交集,若是不相干的两个线程,可以宏观和微观都可以并发的,否则就是宏观并发,微观串行

论坛徽章:
0
9 [报告]
发表于 2012-12-19 13:03 |只看该作者
回复 8# crazyhadoop


    谢谢版主的解惑
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP