Freigeben über


ReaderWriterLockSlim.WaitingUpgradeCount Eigenschaft

Definition

Ruft die Gesamtzahl von Threads ab, die auf eine Zuweisung der Sperre im erweiterbaren Modus warten.

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

Eigenschaftswert

Die Gesamtzahl von Threads, die auf eine Zuweisung des erweiterbaren Modus warten.

Beispiele

Im folgenden Beispiel wird gezeigt, wie die WaitingUpgradeCount -Eigenschaft verwendet wird, um einen Ereignisprotokolleintrag zu generieren, wenn die Anzahl der blockierten Threads, die darauf warten, in den upgradefähigen Modus zu wechseln, einen Schwellenwert überschreitet.

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

Hinweise

Verwenden Sie diese Eigenschaft nur zu Debug-, Profilerstellungs- und Protokollierungszwecken und nicht zum Steuern des Verhaltens eines Algorithmus. Die Ergebnisse können sich ändern, sobald sie berechnet wurden. Daher ist es nicht sicher, Entscheidungen basierend auf dieser Eigenschaft zu treffen.

Gilt für: