西唐 2015-11-11 14:54 采纳率: 0%
浏览 1276

java多线程,显示结果有疑问

package com.ii11;
public class ThreadDemo2 {

/**
 * @param args
 */
public static void main(String[] args) {
    // TODO Auto-generated method stub
    TestThread t = new TestThread();
    new Thread(t).start();
    for(int i=0; i<3; i++)
    {
        System.out.println("main 线程在运行");
    }
}

}

class TestThread implements Runnable
{
public void run()
{
for(int i=0; i<3; i++)
System.out.println("Thread 线程在运行");
}
}
没有实现多线程效果,只显示如下结果为何


main 线程在运行
main 线程在运行
main 线程在运行
Thread 线程在运行
Thread 线程在运行
Thread 线程在运行


  • 写回答

4条回答 默认 最新

  • 梦在高飞 2015-11-11 15:10
    关注

    线程之间的执行顺序不是固定的,主线程的执行速度在你 new 的线程执行之前也是可能的。
    我在代码new Thread(t).start();的下面让主线程休眠了一毫秒Thread.sleep(1);
    执行结果就是这样了:
    Thread 线程在运行
    Thread 线程在运行
    Thread 线程在运行
    main 线程在运行
    main 线程在运行
    main 线程在运行
    楼主可以试一下,共同学习。

    评论

报告相同问题?