读书人

为什么从用户看来多线程是同时执行的

发布时间: 2012-04-19 14:36:43 作者: rapoo

为什么从用户看来,多线程是同时执行的,
但是从系统调度上看,各个线程是交替执行的?

才开头到结尾怎么理解,后面的还能理解,但是为啥从用户角度看,多个线性就是并行的

[解决办法]
单核是交替执行的,但切换速度极快,10-15ms,所以看上去是同时执行的

多核下是确确实实同时执行的
[解决办法]
不是,是系统决定的。

探讨

他们的切换时间是定死的啊?

[解决办法]
单核CPU上多线程“同时运行”只是用户的感觉而已……障眼法~~
[解决办法]
因为时间片一般是毫秒级甚至纳秒级的,进程切换非常快,对于人类来说只不过一瞬间的事情,从宏观的角度看来好像进程都在同时运行一样。

只有在单处理机的情况下,进程才是交替运行的,多处理机情况下是同时运行的。
[解决办法]
探讨

他们的切换时间是定死的啊?

[解决办法]
探讨

他们的切换时间是定死的啊?

[解决办法]
因为你反映不够快
[解决办法]
和人打交道的是外设,外设输出的不一定是系统核心当前正在处理的。

读书人网 >C++

热点推荐