最近写一个多线程程序,老是MAIN方法执行完了子线程还没执行完(不知道以前怎么玩儿的),得不到最终结果,于是找到了CountDownLatch


CountDownLatch是一个同步辅助类,java.util.concurrent.CountDownLatch,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。用给定的计数 初始化 CountDownLatch。由于调用了 countDown() 方法,所以在当前计数到达零之前,await 方法会一直受阻塞。之后,会释放所有等待的线程,await 的所有后续调用都将立即返回。这种现象只出现一次——计数无法被重置。

 一个线程(或者多个), 等待另外N个线程完成某个事情之后才能执行


主要方法:

public void countDown()

public boolean await(long timeout,TimeUnit unit) throws InterrupterdException


详细可以参考:http://blog.csdn.net/shihuacai/article/details/8856370


                     

相关文章:

  • 2021-10-20
  • 2021-11-08
  • 2022-02-14
  • 2021-12-16
  • 2022-02-17
  • 2021-06-21
  • 2021-11-11
  • 2021-09-23
猜你喜欢
  • 2021-08-06
  • 2022-12-23
  • 2022-12-23
  • 2021-12-18
  • 2021-04-03
  • 2021-09-09
  • 2022-03-07
相关资源
相似解决方案