gpt4 book ai didi

java - 判断当前线程是否持有 Java `Lock`

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:52:26 28 4
gpt4 key购买 nike

假设我有一个 java.util.concurrent.locks.Lock 的实例

是否可以判断锁是否被当前线程持有?

假设锁对象只实现了 Lock 接口(interface),不一定是可重入的,所以调用 locktryLock 可能不是一个好方法检查锁的方法。

最佳答案

Lock 接口(interface)本身不提供这样的功能,但是它的通用实现器ReentrantLock 有这样的方法:ReentrantLock.isHeldByCurrentThread() .

但是请注意,如文档所述,此方法的主要目的是调试、断言和测试。如果您需要它用于正常的程序逻辑,那么可能有一些更好的解决方案。

关于java - 判断当前线程是否持有 Java `Lock`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35777261/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com