方法:
1.其实将ReentrantLock 的lock 和 unlock 方法走一遍
2.将 CountDownLatch 和 Semaphore 走一遍。
共享不共享,公平不公平是由实现类决定的。
AQS 只是做了队列的维护,以及 等待重试。
就是走到AQS 的代码,说明没抢到锁,要睡一下,然后醒过来。然后再试试。
https://www.cnblogs.com/waterystone/p/4920797.html
两篇相关的文章:
https://my.oschina.net/u/923324/blog/783570
https://blog.csdn.net/pfnie/article/details/53191892
为什么AQS不需要锁?
难道链表操作顺序保持方向一致,不会出问题?
网友评论