次の方法で共有


Phaser.OnAdvance(Int32, Int32) メソッド

定義

フェーズの進行が迫った場合にアクションを実行し、終了を制御するオーバーライド可能なメソッド。

[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

パラメーター

phase
Int32

このフェイザーが進む前に、このメソッドへの入力時の現在のフェーズ番号

registeredParties
Int32

登録当事者の現在の数

戻り値

true このフェイザーを終了する必要がある場合

属性

注釈

フェーズの進行が迫った場合にアクションを実行し、終了を制御するオーバーライド可能なメソッド。 このメソッドは、このフェイザーを進めるパーティーの到着時に呼び出されます (他のすべての待機パーティーが休止状態の場合)。 このメソッドから制御が戻 trueると、このフェイザーは事前に最終的な終了状態に設定され、後続の呼び出しは true を #isTerminated 返します。 このメソッドの呼び出しによってスローされた (オフの) 例外またはエラーは、このフェイザーを進めようとしているパーティに伝達されます。その場合、事前に発生することはありません。

このメソッドの引数は、現在の遷移に優先するフェイザーの状態を提供します。 内部から onAdvance このフェイザーに対する到着、登録、および待機メソッドの呼び出しの影響は未指定であり、依存しないようにする必要があります。

このフェイザーが階層化された一連のフェイザーのメンバーである場合は、 onAdvance 各アドバンスのルート フェイザーに対してのみ呼び出されます。

最も一般的なユース ケースをサポートするために、このメソッドの既定の実装は、パーティが呼び出arriveAndDeregisterした結果として登録されたパーティの数が 0 になったときに返trueされます。 この動作を無効にして、今後の登録時に継続を有効にするには、このメソッドをオーバーライドして常に次を返します false

{@code
            Phaser phaser = new Phaser() {
              protected boolean onAdvance(int phase, int parties) { return false; }
            };}

の Java ドキュメントjava.util.concurrent.Phaser.onAdvance(int, int)

このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。

適用対象