java多线程中,join方法使用的较为频繁。本次举了两个例子,进一步说明该方法的作用:
示例代码:
<script src="https://code.youkuaiyun.com/snippets/144100.js" type="text/javascript"></script>
上述代码中,join方法中都没有提供参数,如:t1.join();运行结果永远是:
Thread1 start
Thread1 end
Thread2 end
如果join方法中的参数小于线程1执行其逻辑代码块的时间,等待时间以join方法中的时间为准。如,如果将示例中的t1.join();改成t1.join(500),而t1线程中的全部逻辑体执行完需要1000ms,则在500ms后,t2就启动了。这时候的执行结果为:
Thread1 start
Thread2 end
Thread1 end