Lock.TryEnter Metodo

Definizione

Overload

Nome Descrizione
TryEnter()

Prova a immettere il blocco senza attendere.

TryEnter(Int32)

Prova a immettere il blocco, in attesa, se necessario, del numero specificato di millisecondi fino all'immissione del blocco.

TryEnter(TimeSpan)

Prova a immettere il blocco, in attesa, se necessario, fino a quando il blocco non può essere immesso o fino alla scadenza del timeout specificato.

TryEnter()

Origine:
Lock.cs
Origine:
Lock.cs
Origine:
Lock.cs

Prova a immettere il blocco senza attendere.

public:
 bool TryEnter();
public bool TryEnter();
member this.TryEnter : unit -> bool
Public Function TryEnter () As Boolean

Valori restituiti

true se il blocco è stato immesso dal thread corrente; in caso contrario, false.

Eccezioni

Il blocco ha raggiunto il limite di voci ripetute dal thread corrente. Il limite è definito dall'implementazione e deve essere sufficientemente elevato da non essere raggiunto in situazioni normali.

Commenti

Quando il metodo restituisce true, il thread corrente è l'unico thread che contiene il blocco. Se il blocco non può essere immesso immediatamente, il metodo restituisce false senza attendere il blocco. Se il blocco è già mantenuto dal thread corrente, il blocco viene nuovamente immesso. Per chiudere completamente il blocco e consentire ad altri thread di immettere il blocco, il thread corrente deve uscire dal blocco quante volte è entrato nel blocco.

Per altre informazioni, vedere la sezione Osservazioni per Lock.

Si applica a

TryEnter(Int32)

Origine:
Lock.cs
Origine:
Lock.cs
Origine:
Lock.cs

Prova a immettere il blocco, in attesa, se necessario, del numero specificato di millisecondi fino all'immissione del blocco.

public:
 bool TryEnter(int millisecondsTimeout);
public bool TryEnter(int millisecondsTimeout);
member this.TryEnter : int -> bool
Public Function TryEnter (millisecondsTimeout As Integer) As Boolean

Parametri

millisecondsTimeout
Int32

Numero di millisecondi di attesa fino a quando non è possibile immettere il blocco. Specificare Timeout.Infinite (-1) per attendere indefinito o 0 per non attendere.

Valori restituiti

true se il blocco è stato immesso dal thread corrente; in caso contrario, false.

Eccezioni

millisecondsTimeout è minore di -1.

Il blocco ha raggiunto il limite di voci ripetute dal thread corrente. Il limite è definito dall'implementazione e deve essere sufficientemente elevato da non essere raggiunto in situazioni normali.

Commenti

Quando il metodo restituisce true, il thread corrente è l'unico thread che contiene il blocco. Se il blocco non può essere immesso immediatamente, il metodo attende fino a quando il blocco non può essere immesso o fino alla scadenza del millisecondsTimeout timeout specificato dal parametro. Se il timeout scade prima di immettere il blocco, il metodo restituisce false. Se il blocco è già mantenuto dal thread corrente, il blocco viene nuovamente immesso. Per chiudere completamente il blocco e consentire ad altri thread di immettere il blocco, il thread corrente deve uscire dal blocco quante volte è entrato nel blocco.

Per altre informazioni, vedere la sezione Osservazioni per Lock.

Si applica a

TryEnter(TimeSpan)

Origine:
Lock.cs
Origine:
Lock.cs
Origine:
Lock.cs

Prova a immettere il blocco, in attesa, se necessario, fino a quando il blocco non può essere immesso o fino alla scadenza del timeout specificato.

public:
 bool TryEnter(TimeSpan timeout);
public bool TryEnter(TimeSpan timeout);
member this.TryEnter : TimeSpan -> bool
Public Function TryEnter (timeout As TimeSpan) As Boolean

Parametri

timeout
TimeSpan

Oggetto TimeSpan che rappresenta il numero di millisecondi di attesa fino a quando non è possibile immettere il blocco. Specificare un valore che rappresenta Timeout.Infinite (-1) millisecondi di attesa illimitata oppure un valore che rappresenta 0 i millisecondi per non attendere.

Valori restituiti

true se il blocco è stato immesso dal thread corrente; in caso contrario, false.

Eccezioni

timeout, dopo la conversione in un valore integer millisecondo, rappresenta un valore minore di -1 millisecondi o maggiore di Int32.MaxValue millisecondi.

Il blocco ha raggiunto il limite di voci ripetute dal thread corrente. Il limite è definito dall'implementazione e deve essere sufficientemente elevato da non essere raggiunto in situazioni normali.

Commenti

Quando il metodo restituisce true, il thread corrente è l'unico thread che contiene il blocco. Se il blocco non può essere immesso immediatamente, il metodo attende fino a quando il blocco non può essere immesso o fino alla scadenza dell'oggetto specificato timeout . Se il timeout scade prima di immettere il blocco, il metodo restituisce false. Se il blocco è già mantenuto dal thread corrente, il blocco viene nuovamente immesso. Per chiudere completamente il blocco e consentire ad altri thread di immettere il blocco, il thread corrente deve uscire dal blocco quante volte è entrato nel blocco.

Per altre informazioni, vedere la sezione Osservazioni per Lock.

Si applica a