美文网首页
07章 J.U.C 之AQS

07章 J.U.C 之AQS

作者: 菜鸟程序员一枚 | 来源:发表于2019-01-29 21:10 被阅读10次

    使用Node实现FIFO队列,可以用于构建锁或者其他同步装置的基础框架
    利用了一个int类型表示状态
    使用方法是继承
    子类通过继承并通过实现它的方法管理其状态{acquire和release}的方法操纵状态
    可以同时实现排它锁和共享锁模式(独占、共享)

    CountDownLatch

    主要方法await(),countDown()
    使用场景:调用await()的时候必须等待countDown()减去的值为0的时候才会执行await()后面的操作。

    Semaphore (信号量)

    Semaphore

    主要方法:
    acquire(); // 获取一个许可
    release(); // 释放一个许可
    tryAcquire() // 尝试获取一个许可,其他的线程获取不到就知道放弃了
    使用场景:

    CyclicBarrie

    主要方法:
    await()

    ReentrantLock 与 锁

    Condition

    await()
    signalAll()

    相关文章

      网友评论

          本文标题:07章 J.U.C 之AQS

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