主线程结束,子线程还未结束,导致任务执行顺序错乱
解决方案:CountDownLatch伴随着子线程的结束而将自身的任务数递减,到0时主线程再结束
CountDownLatch countDownLatch = new CountDownLatch(5);
for(){
countDownLatch.countDown();
}
if(countDownLatch.getCount() > 0){
countDownLatch.await();
}
主线程结束,子线程还未结束,导致任务执行顺序错乱
解决方案:CountDownLatch伴随着子线程的结束而将自身的任务数递减,到0时主线程再结束
CountDownLatch countDownLatch = new CountDownLatch(5);
for(){
countDownLatch.countDown();
}
if(countDownLatch.getCount() > 0){
countDownLatch.await();
}