有人可以给我一些例子来区分ReentrantLock和AbstractQueuedSynchronizer,在什么情况下,我应该选择ReentrantLock,还是应该使用AbstractQueuedSynchronizer。
答案 0 :(得分:2)
何时应该使用AbstractQueuedSynchronizer
可能永远不会。请在评论链接中查看我的答案,以了解AQS的用途。 AQS是一个为并发构造提供支持的类。如果您没有编写某种低级并发工具,则不应使用AQS。大多数(如果不是全部)j.u.c中提供的障碍都应该足够了。
有人可以给我一些例子来区分ReentrantLock和 的AbstractQueuedSynchronizer
更好的问题是区分ReentrantLock和
之间的差异这些类中的每一个都使用AQS进行并发支持。