Lock.TryEnter Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Overload
TryEnter() |
Tenta di immettere il blocco senza attendere. |
TryEnter(Int32) |
Tenta di immettere il blocco, in attesa se necessario per il 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
Tenta di immettere il blocco senza attendere.
public:
bool TryEnter();
public bool TryEnter();
member this.TryEnter : unit -> bool
Public Function TryEnter () As Boolean
Restituisce
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 ed è destinato a essere abbastanza elevato che non sarebbe stato 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 immesso di nuovo. Per chiudere completamente il blocco e consentire ad altri thread di immettere il blocco, il thread corrente deve uscire dal blocco quante volte ha immesso il blocco.
Per altre informazioni, vedere le note su Lock.
Si applica a
TryEnter(Int32)
- Origine:
- Lock.cs
Tenta di immettere il blocco, in attesa se necessario per il 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 da attendere fino all'immissione del blocco. Specificare Timeout.Infinite (-1
) per attendere in modo indefinito o 0
non attendere.
Restituisce
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 ed è destinato a essere abbastanza elevato che non sarebbe stato 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 immesso di nuovo. Per chiudere completamente il blocco e consentire ad altri thread di immettere il blocco, il thread corrente deve uscire dal blocco quante volte ha immesso il blocco.
Per altre informazioni, vedere le note su Lock.
Si applica a
TryEnter(TimeSpan)
- 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 da attendere fino all'immissione del blocco. Specificare un valore che rappresenta Timeout.Infinite (-1
) millisecondi per attendere in modo indefinito o un valore che rappresenta 0
millisecondi da non attendere.
Restituisce
true
se il blocco è stato immesso dal thread corrente; in caso contrario, false
.
Eccezioni
timeout
, dopo la conversione in un valore millisecondo intero, rappresenta un valore minore di millisecondi o maggiore di -1
Int32.MaxValue millisecondi.
Il blocco ha raggiunto il limite di voci ripetute dal thread corrente. Il limite è definito dall'implementazione ed è destinato a essere abbastanza elevato che non sarebbe stato 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 specificata 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 immesso di nuovo. Per chiudere completamente il blocco e consentire ad altri thread di immettere il blocco, il thread corrente deve uscire dal blocco quante volte ha immesso il blocco.
Per altre informazioni, vedere le note su Lock.