我在Eclipse和Netbeans IDE中运行这段多线程代码时得到了不同的输出结果,我不知道为什么会出现这种情况,也不知道背后的逻辑是什么。
每次执行这段代码时,它都会显示不同的输出结果,请帮助我。
以下是代码:
public class MyThread2 extends Thread
{
public void run()
{
`System.out.println("r1");` ``
try ``
{
Thread.sleep(500);
}
catch(Exception e)
{
}
System.out.println("r2");
}
public static void main(String args[])
{
MyThread2 t1=new MyThread2();
MyThread2 t2=new MyThread2();
t1.start();
t2.start();
System.out.println(t1.isAlive());
System.out.println(t2.isAlive());
}
}
在Eclipse中的输出:
r1
r1
true
true
r2
r2
在Netbeans中的输出:
r1
true
true
r1
r2
r2