黑马程序员技术交流社区

标题: 多线程提问 [打印本页]

作者: LLLLL    时间: 2015-8-26 10:49
标题: 多线程提问
class  ThreadTest
{
          public static void main(String[] args)
          {
                  new Thread()
                  {
                          public void run()
                          {
                                  for (int x=0;x<=40 ;x++ )
                                  {
                                          System.out.println(Thread.currentThread().getName()+"----"+x);
                                  }
                          }        
                  }.start();
                  for (int x=0;x<=40 ;x++ )
                  {
                          System.out.println(Thread.currentThread().getName()+"----"+x);
                  }
                  Thread t=new Thread()
                  {
                          public void run()
                          {
                                  for (int x=0;x<=40 ;x++ )
                                  {
                                          System.out.println(Thread.currentThread().getName()+"----"+x);
                                  }
                          }
                  };
                  t.start();
          }
}

程序怎么执行?为什么
作者: ln0491    时间: 2015-8-26 11:13
前2个线程抢吧,最后那个最后一次行执行完
作者: 至尊幽蓝    时间: 2015-8-26 11:23
先是前两个线程抢,等到主线程的for循环打印那段代码执行完了,第三个线程再加入进来,不管第一个自定义线程执行完没有。但是第三个线程开启时主线程肯定是执行完了。
作者: 徐雪涛xuxuetao    时间: 2015-8-26 13:18
1主线程和第一个thread线程抢,第二个线程t开启是,主线程结束,如果第一个thread没结束继续和t抢。
作者: 水佳伟    时间: 2015-8-26 13:41
好,楼主v587,长知识了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2