ReentrantLock.NewCondition Metodo

Definizione

Restituisce un'istanza Condition per l'utilizzo con questa Lock istanza.

[Android.Runtime.Register("newCondition", "()Ljava/util/concurrent/locks/Condition;", "GetNewConditionHandler")]
public virtual Java.Util.Concurrent.Locks.ICondition? NewCondition();
[<Android.Runtime.Register("newCondition", "()Ljava/util/concurrent/locks/Condition;", "GetNewConditionHandler")>]
abstract member NewCondition : unit -> Java.Util.Concurrent.Locks.ICondition
override this.NewCondition : unit -> Java.Util.Concurrent.Locks.ICondition

Valori restituiti

Oggetto Condition

Implementazioni

Attributi

Commenti

Restituisce un'istanza Condition per l'utilizzo con questa Lock istanza.

L'istanza restituita Condition supporta gli stessi utilizzi dei Object metodi di monitoraggio (Object#wait() wait, Object#notify notifye Object#notifyAll notifyAll) quando vengono usati con il blocco di monitoraggio predefinito.

<ul>

<li>Se questo blocco non viene mantenuto quando vengono chiamati i Conditionmetodi Condition#await() waiting o Condition#signalling, viene generata un'eccezione IllegalMonitorStateException .

<li>Quando i metodi di attesa condition Condition#await() vengono chiamati il blocco viene rilasciato e, prima di restituire, il blocco viene riacquisto e il conteggio dei blocchi viene ripristinato a quello che era quando è stato chiamato il metodo.

<li>Se un thread è Thread#interrupt interrotto durante l'attesa, l'attesa verrà terminata, verrà generata un'eccezione InterruptedException e lo stato interrotto del thread verrà cancellato.

<i thread in attesa li>vengono segnalato nell'ordine FIFO.

<li>L'ordinamento della riacquisizione del blocco per i thread restituiti dai metodi di attesa è uguale a quello dei thread che inizialmente acquisiscono il blocco, che è nel caso predefinito non specificato, ma per<> i blocchi em fair</em> favorisce i thread che sono stati in attesa del più lungo.

</ul>

per java.util.concurrent.locks.ReentrantLock.newCondition().

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.

Si applica a