Java并发编程-理解上下文切换

在多线程编程中,线程个数一般要大于CPU个数,而每个CPU在同一时刻只能被一个线程使用,为了让用户感觉多个线程同时执行,CPU资源的分配采用了时间轮转的策略,也就是给每个线程分配一个时间片,线程在分配时间片内占用CPU执行任务,使用完时间片后,就会处于就绪状态并让出CPU让其它线程占用,这就是上下文切换。

线程上下文切换时机
1、当前线程的CPU时间片使用完成处于就绪状态。
2、当前线程被其它线程中断。

posted @ 2018-11-17 10:31  扇影无风  阅读(287)  评论(0编辑  收藏  举报