标签: java locking
我有一个写锁定对象,我需要解锁,但我不确定它是否被锁定(它取决于相同的变量)。如果未锁定,则调用unlock会抛出异常。我目前正在做的是:
if (fWriteLock.tryLock()) fWriteLock.unlock();
有没有更好的方法?
答案 0 :(得分:1)
更明确的方式是if(fWriteLock.isHeldByCurrentThread()),但如果你不知道你是否有锁定,听起来你可能有设计问题。
if(fWriteLock.isHeldByCurrentThread())