本帖最后由 贾振凯 于 2013-4-2 23:41 编辑
t1.sleep(5000); 这里其实是在让main方法休息,因为sleep方法是让当前正在执行的线程(即他的上下文线程main)休息.
所以整体的执行流程是
t1开始执行
main线程休息5秒钟
5秒之内t1已经执行完所以接下来这句t1.jion()没有意义
然后t2开启
接着t2.join()阻塞主线程
最后组线程执行
另外不推荐用t1.sleep(5000)这种方式来阻塞线程,容易造成误解,理解为谁调用谁阻塞!!!!!!!!
规范的写法是Thread.sleep().要让那个线程休息,就在哪个线程内部调用此方法.
|