为什么单核电脑能同时运行几个线程?
我的电脑是单核的,但实际运用时,却发现能同时运行几个线程,如可以同时QQ聊天,看电影、听音乐,请问这是为什么?...
我的电脑是单核的,但实际运用时,却发现能同时运行几个线程,如可以同时QQ聊天,看电影、听音乐,请问这是为什么?
展开
2个回答
展开全部
因为各个线程都是不断切换轮流执行的,它们每个线程轮流占用的时间片很短很短,人是察觉不到的。
而且并不是每个线程都必须执行完才发生切换,
比如A,B两个线程;
1.A执行到某一时间段要切换了,可A任务没完成,系统就会把A当前执行的位置和数据以入栈的方式保存起来(如果是进程,没个进程都有自己的进程栈,线程我不太清楚)
2.然后B线程执行,B执行时间到了,它的位置状态等也会被系统保存到B的栈中。
3.系统自动找到A的栈,将A之前保存的数据恢复,又可以从A之前断开的状态继续执行下去,如此循环
而且并不是每个线程都必须执行完才发生切换,
比如A,B两个线程;
1.A执行到某一时间段要切换了,可A任务没完成,系统就会把A当前执行的位置和数据以入栈的方式保存起来(如果是进程,没个进程都有自己的进程栈,线程我不太清楚)
2.然后B线程执行,B执行时间到了,它的位置状态等也会被系统保存到B的栈中。
3.系统自动找到A的栈,将A之前保存的数据恢复,又可以从A之前断开的状态继续执行下去,如此循环
来自:求助得到的回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询