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
| 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.