語言

ReentrantLock.HoldCount 屬性

定義

查詢目前執行緒對此鎖的保留次數。

public virtual int HoldCount { [Android.Runtime.Register("getHoldCount", "()I", "GetGetHoldCountHandler")] get; }
[<get: Android.Runtime.Register("getHoldCount", "()I", "GetGetHoldCountHandler")>]
member this.HoldCount : int

屬性值

當前執行緒對此鎖的hold數,若未被當前執行緒持有,則為零

屬性

備註

查詢目前執行緒對此鎖的保留次數。

線程對每個鎖定動作都保留一個鎖,而該動作與解鎖動作不符。

保留計數資訊通常僅用於測試與除錯目的。 例如,如果某段程式碼不應在已持有鎖的情況下輸入,我們可以斷言該事實:

{@code
            class X {
              final ReentrantLock lock = new ReentrantLock();
              // ...
              public void m() {
                assert lock.getHoldCount() == 0;
                lock.lock();
                try {
                  // ... method body
                } finally {
                  lock.unlock();
                }
              }
            }}

Java 文件 java.util.concurrent.locks.ReentrantLock.getHoldCount()。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於