2015-11-05 54 views
1

我有一個寫鎖對象,我需要解鎖,但我不確定它是否被鎖定(取決於相同的變量)。如果未鎖定,調用解鎖將引發異常。我目前正在做的是這樣的:Java解鎖ReadWrite鎖安全嗎?

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

沒有更好的方法嗎?

回答

1

更清晰的方法是if(fWriteLock.isHeldByCurrentThread()),但是如果您不知道是否有鎖,那聽起來您可能有設計問題。

+0

不錯,我沒有看到這個方法,因爲我看過Lock的接口,而不是ReentrantReadWriteLock。 – duduamar