Phaser.OnAdvance(Int32, Int32) 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.
Metodo sostituibile per eseguire un'azione in caso di avanzamento della fase in sospeso e per controllare la terminazione.
[Android.Runtime.Register("onAdvance", "(II)Z", "GetOnAdvance_IIHandler")]
protected virtual bool OnAdvance (int phase, int registeredParties);
[<Android.Runtime.Register("onAdvance", "(II)Z", "GetOnAdvance_IIHandler")>]
abstract member OnAdvance : int * int -> bool
override this.OnAdvance : int * int -> bool
Parametri
- phase
- Int32
numero di fase corrente per l'immissione di questo metodo, prima che questo phaser sia avanzato
- registeredParties
- Int32
numero corrente di parti registrate
Restituisce
true
se questo phaser deve terminare
- Attributi
Commenti
Metodo sostituibile per eseguire un'azione in caso di avanzamento della fase in sospeso e per controllare la terminazione. Questo metodo viene richiamato all'arrivo della parte che avanza questa fase (quando tutte le altre parti in attesa sono inattiva). Se questo metodo restituisce true
, questo phaser verrà impostato su uno stato di terminazione finale in anticipo e le chiamate successive a #isTerminated
restituiranno true. Qualsiasi eccezione (deselezionata) o errore generata da una chiamata di questo metodo viene propagata all'entità che tenta di avanzare in questa fase, nel qual caso non si verifica alcun anticipo.
Gli argomenti di questo metodo forniscono lo stato del phaser prevalente per la transizione corrente. Gli effetti della chiamata di metodi di arrivo, registrazione e attesa su questo phaser dall'interno onAdvance
non sono specificati e non devono essere basati su.
Se questo phaser è un membro di un set a livelli di phaser, onAdvance
viene richiamato solo per il phaser radice in ogni avanzamento.
Per supportare i casi d'uso più comuni, l'implementazione predefinita di questo metodo restituisce true
quando il numero di parti registrate è diventato zero come risultato di una parte che richiama arriveAndDeregister
. È possibile disabilitare questo comportamento, abilitando quindi la continuazione in caso di registrazioni future, eseguendo l'override di questo metodo per restituire false
sempre :
{@code
Phaser phaser = new Phaser() {
protected boolean onAdvance(int phase, int parties) { return false; }
};}
Documentazione java per java.util.concurrent.Phaser.onAdvance(int, int)
.
Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.