一度に 2 つの異なるスレッドを実行しようとしていますが、実行できません。Thread_1 と Thread_2 が実行されますが、両者の差は約 500ms です。コードのどこにもwait()
orを使用していません。sleep()
質問:
スレッドを同時にまたは並行して実行する方法は?
スレッドを高速に実行するには?
2番目の質問ではこれを使用Thread.setPriority(Thread.MAX_PRIORITY)
しましたが、他の質問との時差は同じです。
サンプルコードで更新
以下の例と同じことを行いますが、両方のスレッド間の実行に時間がかかります。
public static void main(String args[])
{
MyThread thread1 = new MyThread("thread1: ");
MyThread thread2 = new MyThread("thread2: ");
thread1.start();
thread2.start();
boolean thread1IsAlive = true;
boolean thread2IsAlive = true;
do {
if (thread1IsAlive && !thread1.isAlive()) {
thread1IsAlive = false;
System.out.println("Thread 1 is dead.");
}
if (thread2IsAlive && !thread2.isAlive()) {
thread2IsAlive = false;
System.out.println("Thread 2 is dead.");
}
} while(thread1IsAlive || thread2IsAlive);
}
私はウェブを検索し、いくつかのドキュメントを調べました。次に何を試すことができますか?