ResourceReloadListener#reload
は、それ自体でリロードを実行することは想定されていません。 代わりに、その目標はCompletableFuture
を返すことです。これは、評価されると、実際のリロードタスクをさまざまなExecutor
に送信することになっています。
コードをreload
に直接入れて、何もしないダミーのCompletableFuture
を返すことでシステムをだまそうとすると、 Synchronizer#whenPrepared
によって返される未来は決して得られないため、リロード時にゲームがハングします。と呼ばれる。
createReloadTask
のような名前を付けることは、このパスを思いとどまらせ、このメソッドで直接リロードを実行してはならないことを明確にする方法のようです。
imo、 ResourceReloadListener
は、実際にリロードを実行するものであるため、 ResourceReloader
に名前を変更する必要があります( ResourceReloadHandler
と比較してください)。 reload
の名前はすばらしいimoです。または、すべてのCompletableFuture
関連の名前に対して一貫した命名スキームを検討することができます。
見てみると、リロードを監視するリソースリローダーがすでにあります。
今、私はこれに名前を付ける必要があるかどうか、または名前を変更する必要があるかどうかについて少し混乱しています。
うーん、多分ResourceReloader
-> SimpleResourceReload
、 ResourceReloadListener
-> ResourceReloader
。 さらに、 ResourceReloadMonitor
からResourceReload
に名前を付け、それに応じて実装に名前を付けます。 ResourceReload
は、1回のリロードを表し、直後に破棄されるため、この名前は実際には適切に聞こえます。
最も参考になるコメント
imo、
ResourceReloadListener
は、実際にリロードを実行するものであるため、ResourceReloader
に名前を変更する必要があります(ResourceReloadHandler
と比較してください)。reload
の名前はすばらしいimoです。または、すべてのCompletableFuture
関連の名前に対して一貫した命名スキームを検討することができます。