Java安全解锁读写锁?

Java安全解锁读写锁?,java,locking,Java,Locking,我有一个写锁对象需要解锁,但我不确定它是否被锁定(它取决于相同的变量)。如果未锁定,调用unlock将引发异常。我目前正在做的是: if (fWriteLock.tryLock()) fWriteLock.unlock(); 没有更好的方法吗?如果(fWriteLock.isHeldByCurrentThread()),一个更清晰的方法应该是,但是如果你不知道你是否有锁,听起来你可能有设计问题。很好,我没有看到这个方法,因为我已经查看了锁的接口,而不是Reentrant

我有一个写锁对象需要解锁,但我不确定它是否被锁定(它取决于相同的变量)。如果未锁定,调用unlock将引发异常。我目前正在做的是:

if (fWriteLock.tryLock())
            fWriteLock.unlock();

没有更好的方法吗?

如果(fWriteLock.isHeldByCurrentThread()),一个更清晰的方法应该是
,但是如果你不知道你是否有锁,听起来你可能有设计问题。

很好,我没有看到这个方法,因为我已经查看了锁的接口,而不是ReentrantReadWriteLock。