長時間の計算を行うプログラムがあるので、そのパフォーマンスを高速化したいと思います。そのため、現時点では3つのスレッドを起動しようとしましたが、CPU使用率の25%を占めており(つまり、1つのCPUのみが使用されています) 、リアルタイムで使用して優先度を設定java.exe
しようとしても残ります(24)。使ってみましたが、動作がさらに遅いようです。各スレッドが1つのプロセッサに割り当てられ、合計CPU使用率が75%に増加した場合は完璧ですが、その方法がわかりません。そして、それが私のコードが今どのように見えるかです:.setPriority(Thread.MAX_PRIORITY);
java.exe
RealtimeThread
Thread g1 = new MyThread(i,j);
g1.setPriority(Thread.MAX_PRIORITY);
g1.run();
Thread g2 = new MyThread(j,i);
g2.setPriority(Thread.MAX_PRIORITY);
g2.run();
Thread g3 = new MyThread(i,j);
g3.setPriority(Thread.MAX_PRIORITY);
g3.run();
if (g1.isAlive()) {
g1.join();
}
if (g2.isAlive()) {
g2.join();
}
if (g3.isAlive()) {
g3.join();
}