成员sync
所含方法: await(),await(long, TimeUnit),countDown,getCount
内部静态类Sync extends AbstractQueuedSynchronizer
1、两个公开方法,await和countDown,不存在获取资源的操作,在初始化的时候已经设置state。tryAcquireShared只是做检查操作,如果等于0,就返回1(表示获取成功)
countDown做releaseShared操作,一直release到state等于0,就会唤醒AQS里面的第一个Node,该Node获取资源又成功(因为tryAcquireShared里面不更新state,只检查),调用setHeadAndPropagate进行唤醒的传播,直到所有Node全部醒完。
本文深入探讨了CountDownLatch类的工作原理及其实现细节。通过分析其内部类Sync如何继承AbstractQueuedSynchronizer来实现线程等待与唤醒机制,阐述了await和countDown方法的具体作用。
357

被折叠的 条评论
为什么被折叠?



