我有一个日志记录代码,在执行所有Threads
之后需要执行该代码。
Thread t1 = new MyThread();
Thread t2 = new MyThread();
t1.run();
t2.run();
doLogging();
只有在两个线程都完成处理后,才可以执行
doLogging()
吗?现在,一旦启动t1和t2,就会调用doLogging()
。 最佳答案
只需在您的join()
调用之前 doLogging()
所有线程:
t1.join();
t2.join();
// the following line will be executed when both threads are done
doLogging();
请注意,如果要等待所有线程,则
join()
调用的顺序无关紧要。