美文网首页
每日一结——CountDownLatch

每日一结——CountDownLatch

作者: 奔向学霸的路上 | 来源:发表于2020-07-22 14:30 被阅读0次

    简介

    CountDownLatch是一个同步工具类,它允许一个线程或多个线程一直在等待,直到其他线程执行完后再执行。

    实现原理

    • 通过给定count来初始化,所有调用了await()的线程会一直阻塞,直到通过countDown()方法将count减为0为止或者await(long timeout, TimeUnit unit)超时。
    • count没法被重置,如果需要重置可以考虑使用CyclicBarrier。
      举例:
      一个CountDownLatch通过一个值为1的count被初始化,来作为一个开/关的门或门闩:所有调用了await()的线程都会在门前等待,直到门被一个线程通过调用countDown()打开。

    相关文章

      网友评论

          本文标题:每日一结——CountDownLatch

          本文链接:https://www.haomeiwen.com/subject/abrwkktx.html