次の方法で共有


ReaderWriterLockSlim.WaitingWriteCount プロパティ

定義

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

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

プロパティ値

書き込みモードに入るのを待機しているスレッドの総数。

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

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

注釈

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

適用対象