Udostępnij za pośrednictwem


ReaderWriterLockSlim.WaitingUpgradeCount Właściwość

Definicja

Pobiera łączną liczbę wątków oczekujących na wprowadzenie blokady w trybie uaktualniania.

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

Wartość właściwości

Całkowita liczba wątków oczekujących na wprowadzenie trybu uaktualniania.

Przykłady

W poniższym przykładzie pokazano, jak użyć WaitingUpgradeCount właściwości do wygenerowania wpisu dziennika zdarzeń, jeśli liczba zablokowanych wątków, oczekiwanie na wprowadzenie trybu uaktualniania przekracza próg.

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

Uwagi

Ta właściwość służy tylko do debugowania, profilowania i rejestrowania, a nie do kontrolowania zachowania algorytmu. Wyniki mogą ulec zmianie zaraz po ich obliczeniu. W związku z tym nie jest bezpieczne podejmowanie decyzji w oparciu o tę właściwość.

Dotyczy