Java——线程sleep()join()yield()方法

来源:互联网 发布:相机参数详解 知乎 编辑:程序博客网 时间:2024/06/16 00:28

一:

public class Test{public static void main(String[] args) {Mythread t = new Mythread("aaaa");t.start();try {t.join();} catch (InterruptedException e) {e.printStackTrace();}for(int i=1;i<=10;i++){System.out.println("i am main thread");}}}class Mythread extends Thread{Mythread(String s){super(s);}public void run(){for(int i=1;i<=10;i++){System.out.println("i am" + getName());try {sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}return;}}
输出结果:i amaaaa
    i amaaaa
            i amaaaa
  i am main thread
  i am main thread
  i am main thread
二、

public class Test{public static void main(String[] args) {Mythread t = new Mythread("aaaa");t.start();for(int i=1;i<=3;i++){System.out.println("i am main thread");}}}class Mythread extends Thread{Mythread(String s){super(s);}public void run(){for(int i=1;i<=3;i++){System.out.println("i am" + getName());}try {sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}return;}}
输出结果:
i am main thread
i am main thread
i am main thread
i amaaaa
i amaaaa
i amaaaa


通过一、二比较得:
join()方法让此线程加入到主线程之中,即等待主线程执行完毕之后再执行子线程。
sleep()方法会让线程睡眠指定的毫秒数。
yield()方法让出CPU,让其他线程执行。




0 0
原创粉丝点击