大量の計算を実行し、それを友人のコンピューターと照合することによって、プロセッサーの機能をテストするJavaプログラムを作成しました。
ただし、プログラムを実行すると、プロセッサが100%使用されません。処理能力は1〜2%から27%になり、RAMは34%のままです。
これは、Javaまたはプロセッサが機能する方法と同じですか?それとも私のコードに何かありますか?計算を処理するクラスは次のとおりです(注:私はまだプログラミングの方法を学んでおり、ソフトウェアがハードウェアと相互作用する方法に興味があります):
import javax.swing.JTextPane;
public class Main {
static int numberToCalculate = 100;
static int otherNumberToCalculate = 50;
static String typeOfCalculation = "all";
static int calculated;
static int calculations = 10000000;
public static void calculate(JTextPane j, JTextPane j2) {
long time = System.currentTimeMillis();
for(int i = 0; i <= calculations; i++) {
switch(typeOfCalculation) {
case "Divide":
calculated = numberToCalculate / otherNumberToCalculate;
break;
case "Multiply":
calculated = numberToCalculate * otherNumberToCalculate;
break;
case "Plus":
calculated = numberToCalculate + otherNumberToCalculate;
break;
case "Minus":
calculated = numberToCalculate - otherNumberToCalculate;
break;
case "All":
calculated = numberToCalculate / otherNumberToCalculate;
calculated = calculated * otherNumberToCalculate;
calculated = calculated + otherNumberToCalculate;
calculated = calculated - otherNumberToCalculate;
break;
default:
Test.UpdateText(j, "Error, please pick type of calculation.");
Test.UpdateText(j2, "Error, please pick type of calculation.");
break;
}
if(i == calculations) {
Test.UpdateText(j, "Milliseconds: " + (System.currentTimeMillis() - time));
Test.UpdateText(j2, "Result: " + calculated);
}
}
}
public static void main(String [] args)
{
Test.window();
}
}
そして、これが出力の写真です:http: //i.stack.imgur.com/lH1VA.png