ReaderWriterLockSlim.WaitingReadCount プロパティ

定義

読み取りモードでロックに入るのを待機しているスレッドの総数を取得します。

public:
 property int WaitingReadCount { int get(); };
public int WaitingReadCount { get; }
member this.WaitingReadCount : int
Public ReadOnly Property WaitingReadCount As Integer

プロパティ値

読み取りモードに入るのを待機しているスレッドの総数。

次の例は、 プロパティを使用 WaitingReadCount して、ブロックされているスレッドの数が読み取りモードに入るのを待機している場合にイベント ログ エントリを生成する方法を示しています。

using (ReaderWriterLockSlim rwLock = new ReaderWriterLockSlim()) {
Using rwLock As New ReaderWriterLockSlim()
int waitingReadCt = rwLock.WaitingReadCount;
if (waitingReadCt > READ_THRESHOLD)
{
    performanceLog.WriteEntry(String.Format(
        "{0} blocked reader threads; exceeds recommended maximum.", 
        waitingReadCt));
}
Dim waitingReadCt As Integer = rwLock.WaitingReadCount
If waitingReadCt > READ_THRESHOLD Then
    performanceLog.WriteEntry(String.Format( _
        "{0} blocked reader threads; exceeds recommended maximum.", _
        waitingReadCt))
End If

注釈

このプロパティは、デバッグ、プロファイリング、ログ記録の目的でのみ使用し、アルゴリズムの動作を制御する場合は使用しません。 結果は、計算されるとすぐに変更される可能性があります。 したがって、このプロパティに基づいて決定することは安全ではありません。

適用対象