起動・前提準備
初期テーブル、依存状態、定期処理の点灯など、このクラスが動き始める前提をまとめています。
Build Scheduler を担当するclassです。
com.example.rankingplugin.fantasyfantasy/BuildScheduler.javaclassクラス直前の Javadoc は見つかりませんでした。ソースとメソッド構成から責務を補完しています。
Build Scheduler を担当するclassです。fantasy パッケージの 小規模クラスで、スケジューラを確認する起点です。全面展開版では、他の重点クラスと同じ章立てで読めるように補強しています。
BuildSchedulerensureRunningenqueueadaptBudgetclearsetPerTickBudgetgetPerTickBudget初期テーブル、依存状態、定期処理の点灯など、このクラスが動き始める前提をまとめています。
外部から呼ばれる公開メソッドや、対象プレイヤー・対象データ・対象ワールドを引き当てる経路です。
メモリ状態と保存状態を揃え、結果を次の呼び出しや画面表示へ繋ぐ部分です。
メインスレッド境界とバックグラウンド処理が交差します。重い処理やタイミング起因の不具合を追うときの要所です。
このクラスが前提状態を揃え、外部から利用可能な形まで立ち上がる流れです。新規依存の追加や起動失敗の調査はまずここから追います。
イベント受理、判定、状態更新、通知までの主経路です。体感不具合や想定外の分岐はこの流れのどこで止まるかを見ると切り分けやすいです。
結果を保持し、必要なら永続化し、最後に掃除まで行う出口です。画面更新だけ合って保存が壊れるケースや残骸が残るケースの確認に向きます。
| Signature | 説明 | 主要呼び出し |
|---|---|---|
public BuildScheduler(JavaPlugin plugin, int initialBudget) | 依存オブジェクトや初期状態を受け取り、このクラスの動作を開始できる状態へ組み立てます。 | 主要呼び出しなし |
| Name | Visibility | Kind | 説明 |
|---|---|---|---|
| BuildScheduler | public | コンストラクタ | 依存オブジェクトや初期状態を受け取り、このクラスの動作を開始できる状態へ組み立てます。 |
| ensureRunning | private | メソッド | 必要なテーブル・状態・前提条件が揃っているかを確認し、不足分を補います。 |
| adaptBudget | private | メソッド | adaptBudget の主要処理を担当します。 |
| enqueue | public | メソッド | enqueue の主要処理を担当します。 |
| clear | public | メソッド | clear の主要処理を担当します。 |
| setPerTickBudget | public | メソッド | setPerTickBudget の主要処理を担当します。 |
| getPerTickBudget | public | メソッド | 必要な状態を取得し、呼び出し側で利用しやすい形へ返します。 |
public BuildScheduler(JavaPlugin plugin, int initialBudget)依存オブジェクトや初期状態を受け取り、このクラスの動作を開始できる状態へ組み立てます。
JavaPlugin pluginint initialBudgetなし
private void ensureRunning()必要なテーブル・状態・前提条件が揃っているかを確認し、不足分を補います。
なし
private int adaptBudget()adaptBudget の主要処理を担当します。
なし
public void enqueue(BuildTask t)enqueue の主要処理を担当します。
BuildTask tなし
public void clear()clear の主要処理を担当します。
なし
public void setPerTickBudget(int v)setPerTickBudget の主要処理を担当します。
int vなし
public int getPerTickBudget()必要な状態を取得し、呼び出し側で利用しやすい形へ返します。
なし
ensureRunning → nanoTime → run → isEmpty → cancel → adaptBudgetenqueue → offer → ensureRunningadaptBudget → max