StampedLock 为什么不支持await / signal ?

大家好,
假设一个线程持有写锁,AQS队列中排队着2个读锁线程。
这时写锁线程执行await进入条件队列,2个读锁线程执行并signal,使写线程从条件队列转移到AQS队列,等到读线程释放锁后,继续执行写。
这个功能为什么StampedLock不支持呢?

阅读 1.4k
1 个回答

因为它支持在多种锁模式中协同使用,所以这个类并没有直接实现 lock 或者 readwritelock 接口。然而,一个 stampedlock 仅在被需要关联功能集合中的应用中可以被视为 asReadLock(), as Writelock(),或者asReadWriteLock()

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题