ReaderWriterLockSlim.WaitingWriteCount Propriedade

Definição

Obtém o número total de threads que estão esperando para inserir o bloqueio no modo de gravação.

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

Valor da propriedade

Int32

O número total de threads que estão aguardando para entrar no modo de gravação.

Exemplos

O exemplo a seguir mostra como usar a WaitingWriteCount propriedade para gerar uma entrada de log de eventos se o número de threads bloqueados, aguardando para entrar no modo de gravação, exceder um limite.

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

Comentários

Use essa propriedade somente para fins de depuração, criação de perfil e registro em log e não para controlar o comportamento de um algoritmo. Os resultados podem ser alterados assim que forem calculados. Portanto, não é seguro tomar decisões com base nessa propriedade.

Aplica-se a