千鋒教育-做有情懷、有良心、有品質的職業教育機構
即使單核處理器也支持多線程執行代碼,CPU通過給每個線程分配CPU時間片來實現這個機制。
時間片是CPU分配給各個線程的時間,因為時間片非常短,所以CPU通過不停地切換線程執行,讓我們感覺多個線程是同時執行的。(時間片一般是幾十毫秒) CPU通過時間片分配算法來循環執行任務,當前任務執行一個時間片后會切換到下一個任務。
但是,在切換前會保存上一個任務的狀態,以便下次切換回這個任務時,可以再加載這個任務的狀態。
所以任務從保存到加載的過程就是一次上下文切換,上下文切換會影響多線程的執行速度。
相關推薦