Windowsでファイルをコピーすると、予想される完了時間が得られます。その時が最高の時ですか、それとも最悪の時ですか?また、環境変数を想定していますか?
3 に答える
レイモンド・チェンはこれについて言いたいことがあります...
このような機能を実装する場合は、プログレス バーが 90% まで急速に成長するようにします。そうすれば、どんなに時間がかかっても、本当の仕事をすることができます。ユーザー エクスペリエンスは、現在の進行状況を表示するよりもはるかに優れています ;-)
時間の計算方法は推測することしかできません。しかし、コピーウィンドウを監視し、時間の見積もりがどのように変化するかを確認するのに何時間も費やしました。これが私の最良の見積もりです。
- Windows は、コピーするすべてのファイルのリストを保持しています
- すでにコピーされたファイルの時間と数を追跡しています
- 残り時間は次のように計算されます。
- これまでのファイルあたりの平均時間 = これまでに経過した時間 / 既にコピーされたファイル
- すべてのファイルに必要な推定時間 = ファイルあたりの平均時間 * ファイル数。
計算は、一定の時間間隔が経過した後に繰り返されます (おそらく 5 秒、おそらく 30 秒?)
上記で説明したのはおそらくもう少し複雑です。現在コピーされているファイルのサイズと、コピーされた割合も計算に含まれると思います。これで、コピーされるファイルが 1 つだけのときに見積もりが表示される理由が説明できます ;-)。
したがって、あなたの質問に対する直接的な回答では、それは最良の時期でも最悪の時期でもありません。ファイルサイズが互いに異なるほど正確ではない非常に弱い推定値です。
言い換えれば、プログラマーが特定の機能を実装することを考えることができるのは、おそらく最速の方法でした (高速プログラミング、および実行時の CPU 使用率の点で)。金曜日の午後にコーディングされたとしても驚かないでしょう...