黑马程序员技术交流社区

标题: 多线程——守护线程,join方法 [打印本页]

作者: 水蛭31    时间: 2015-6-19 14:45
标题: 多线程——守护线程,join方法
多线程——守护线程,join方法守护线程:也叫后台线程,他需要在线程创建后, 就需要设置。
前台线程:所看到的线程都是前台的线程。
然后在开始执行线程。
在运行的时候, 会共同抢夺CPU的执行权运行, 开启运行时没有区别的;
但是在结束程序上有区别:
当前台的线程都结束后, 后台的线程就会自动结束。

join方法:等待该线程终止。
代码如下:
  1. //线程0, 要申请加入进来, 线程0要CPU的执行权,join的意思就是, 抢夺CPU的执行权。
  2. //这时主线程就把CPU的执行权给了线程0,主线程处于冻结状态;
  3. //数据全部打印完, 结束后,主线程才恢复到运行状态,这个就是join 的用法,
  4. //主线程让出了执行权,这时主线程会只等到t1线程执行完,才活过来, 和t2结不结束, 没有关系,
  5. //join可以临时加入线程执行
  6. class Demo implements Runnable
  7. {
  8.         public void run(){
  9.                 for(int x=0;x<70;x++){
  10.                         System.out.println(Thread.currentThread().toString()+"...."+x);
  11.                         Thread.yield();//暂停当前执行的线程程序
  12.                 }
  13.         }
  14. }
  15. class ThreadJoin
  16. {
  17.         public static void main(String[] args)throws InterruptedException
  18.         {
  19.                 Demo d=new Demo();
  20.                 Thread t1=new Thread(d);
  21.                 Thread t2=new Thread(d);
  22.                 t1.start();
  23.                 //t1.setPriority(Thread.MAX_PRIORITY);//设置优先级
  24.                
  25.                 t2.start();
  26.                 //t1.join();
  27.                 /*
  28.                 for(int x=0;x<80;x++){
  29.                         System.out.println(Thread.currentThread().getName()+"...."+x);
  30.                 }
  31.                 */
  32.         }
  33. }
复制代码





作者: 我的最优解    时间: 2015-6-19 19:15
挺不错的
作者: 13569403973    时间: 2015-6-19 20:26
厉害!加油!很好!
作者: keto    时间: 2015-6-19 20:33
学习了。谢谢分享。。




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