ฉันได้สร้างโปรแกรมอย่างง่ายใน java:
public static void main(String[] args) throws InterruptedException {
while (true)
;
}
ถ้าฉันใช้สิ่งนี้บนเครื่อง Linux แสดงว่ามีการใช้งาน CPU 100% แต่ไม่ทำให้ระบบปฏิบัติการช้า อย่างไรก็ตามถ้าฉันใช้รหัสเดียวกันบน Windows มันจะแสดงเฉพาะการใช้งาน CPU ประมาณ 20% เท่านั้น
ฉันใช้ Oracle JRE บน Windows และ OpenJDK 6 บน Linux
ฉันสงสัยว่าเธรดตัวกำหนดตารางเวลาของ Windows จะสุ่มและ Linux ไม่มีหรือไม่
100*N cores %
?