多线程真的是多个线程一起运行吗
本帖最后由 jwnydy 于 2012-12-11 21:25 编辑百度出来的一个答案,
不知这个回答怎么样?大侠们有没有其他更好的解释?谢谢啊
电脑是2核的,是在linux环境下 这得看你是不是多核了,如果是多核的话,一个核心一个线程没压力,不过操作系统也必须支持多核 回复 2# 耗资喜欢猫
电脑室2核的,是在linux环境下 反过来想,从CPU的角度想,它是不知道操作系统什么的,就是fetch -> decode -> execute,一直只干这件事。而操作系统所谓的线程,无非一个是执行的逻辑单元,切换线程只是跑另一部分逻辑单元,但对于CPU来说,一直是执行前面的过程。所以对于单个核,同一时刻只可能是一个线程在跑,对于多核/多CPU,同一时刻是会有不同线程在跑的。 回复 4# Cyberman.Wu
谢谢你给予我问题的回答,谢谢~ 这令人想起concurrent与parallel的区别。曾经看到解释说,前者只意味着多个过程交互进行,不一定同时;后者则严格强调同时进行。 回复 6# tempname2
嗯,谢谢你的回答 那也得看这两个线程有没有交集,若是不相干的两个线程,可以宏观和微观都可以并发的,否则就是宏观并发,微观串行 回复 8# crazyhadoop
谢谢版主的解惑
页:
[1]