天天看點

Java 中用到的線程排程算法是什麼 *

計算機通常隻有一個 CPU,在任意時刻隻能執行一條機器指令,每個線程隻有獲得CPU 的使用權才能執行指令。所謂多線程的并發運作,其實是指從宏觀上看,各個線程輪流獲得 CPU 的使用權,分别執行各自的任務。在運作池中,會有多個處于就緒狀态的線程在等待 CPU,JAVA 虛拟機的一項任務就是負責線程的排程,線程排程是指按照特定機制為多個線程配置設定 CPU 的使用權。

有兩種排程模型:分時排程模型和搶占式排程模型。

分時排程模型是指讓所有的線程輪流獲得 cpu 的使用權,并且平均配置設定每個線程占用的 CPU 的時間片這個也比較好了解。