4
私のマルチスレッドJavaアプリケーションが大量のCPUを消費している理由をデバッグしようとすると、各スレッドがCPUを集中的に使用するのではなく、Javaを実行するときに、私のCPUの100%を占めるJavaランタイムを見つけてください。外部プロセスがJava CPUを大量に消費する
さらにデバッグするために、単純なLinuxの "ls"コマンドでその外部プロセスを置き換えました。ここで私は
String[] commands = new String[]{"/bin/sh", "-c", "ls"};
try {
Process p = Runtime.getRuntime().exec(commands);
} catch (IOException ex) {
//
}
IT-実行していますかそれでも、私は、JavaがCPUのすべてを使用して表示されます。
私は、プロセスからの出力も読んでいませんし、ストリームを開くこともありません。
何が間違っている可能性がありますか?単純にls
Javaから外部で実行すると、Javaランタイムで大きなCPUが消費されるのですか?
)と、それは