public class ThreadDemo9_1
{
public static void main(String args[])
{
new TestThread().start();
for(int i=0;i<10;i++)
{
System.out.println("main 线程运行");
}
}
}class TestThread extends Thread
{
public void run()
{
for(int i=0;i<10;i++)
{
System.out.println("TestThread 线程运行");
}
}}
这里的结果并非书上说的交替出现,而是先出现完所有 main 的,然后才出现所有的 TestThread的,这是什么原因?
{
public static void main(String args[])
{
new TestThread().start();
for(int i=0;i<10;i++)
{
System.out.println("main 线程运行");
}
}
}class TestThread extends Thread
{
public void run()
{
for(int i=0;i<10;i++)
{
System.out.println("TestThread 线程运行");
}
}}
这里的结果并非书上说的交替出现,而是先出现完所有 main 的,然后才出现所有的 TestThread的,这是什么原因?
可以多试几遍。
或把循环次数改大一点 , 例如 写成 i < 10000
public class ThreadDemo9_1
{
public static void main(String args[])
{
new TestThread().start();
for(int i=0;i<30;i++)
{
System.out.println("main 线程运行"+i);
}
}
}class TestThread extends Thread
{
public void run()
{
for(int i=0;i<30;i++)
{
System.out.println("TestThread 线程运行"+i);
}
}}
这样就可以体现线程执行时的随机性:
一转眼的事。
你要是想看效果。
就在主线程和run方法没执行一遍就中sleep一下