1
「Thread.sleep」を使用せずに「while(true)」を実行すると、LinuxではCPU使用率が100%になりますが、Windowsでは発生しません
私はJavaで簡単なプログラムを作成しました: public static void main(String[] args) throws InterruptedException { while (true) ; } これをLinuxマシンで実行すると、100%のCPU使用率が表示されますが、OSが遅く見えることはありません。ただし、Windowsでまったく同じコードを実行すると、CPU使用率が約20%しか表示されません。 WindowsではOracle JRE、LinuxではOpenJDK 6を使用しています。 Windowsのスケジューラがスレッドをランダムにプリエンプトし、Linuxがプリエンプトしないのだろうか?