Java Thread join() 的用法

来源:互联网 发布:js设为首页和加入收藏 编辑:程序博客网 时间:2024/05/21 15:47

Java Thread中, join() 方法主要是让调用改方法的thread完成run方法里面的东西后, 在执行join()方法后面的代码。示例:

class ThreadTesterA implements Runnable {     private int counter;     @Override    public void run() {        while (counter <= 10) {            System.out.print("Counter = " + counter + " ");            counter++;        }        System.out.println();    }} class ThreadTesterB implements Runnable {     private int i;     @Override    public void run() {        while (i <= 10) {            System.out.print("i = " + i + " ");            i++;        }        System.out.println();    }} public class ThreadTester {    public static void main(String[] args) throws InterruptedException {        Thread t1 = new Thread(new ThreadTesterA());        Thread t2 = new Thread(new ThreadTesterB());        t1.start();        t1.join(); // wait t1 to be finished        t2.start();        t2.join(); // in this program, this may be removed    }}


如果去掉t1.join()这个语句过后, 输出的书序是乱的, 加上这个语句过后, 就会按照顺序输出,  从某种意义上说实现了同步。








0 0
原创粉丝点击