プロセスバーまたは進行状況パーセンテージを表示する必要がある長時間実行プロセスを実装しています。長時間実行されるプロセスの全体的なロジックは複雑で (さまざまなページ データの取得)、その結果、コード内のさまざまな場所で多くのパーセンテージをハードコーディングすることになります。
完了率の更新に関して、最適な設計パターンと見なされるものは何ですか?
プロセスバーまたは進行状況パーセンテージを表示する必要がある長時間実行プロセスを実装しています。長時間実行されるプロセスの全体的なロジックは複雑で (さまざまなページ データの取得)、その結果、コード内のさまざまな場所で多くのパーセンテージをハードコーディングすることになります。
完了率の更新に関して、最適な設計パターンと見なされるものは何ですか?
IProgressMonitorの周りで JFace で使用されているパターンがうまく機能することがわかりました。授業を見学することで、ある程度の理解を深めることができます。確認する追加のクラスは、ProgressMonitorDialogとIRunnableWithProgressです。この記事も参考になるかもしれません。
実行するタスクの「長さ」が事前にわかっていて、どれだけ進んでいるかを知る方法がある場合は、バーにパーセンテージを決定させる必要があります. たとえば、既知の数のファイルを処理する必要がある場合は、この数を構築の進行状況バーに表示します。次に、プロセス中に、バーがプロセスをポーリングするか、プロセスがバーにどのくらい進んでいるか (ファイル数) を伝えることができます。バーは、これら 2 つの値からパーセンテージを計算できます。これが、Java の標準のプログレス バーのしくみです。