10

非常に遅いネットワーク接続を介して、HTTP プロトコルを使用して大きなファイルをダウンロードする必要があります。手動で行うと、ダウンロード速度が耐えられないほど遅くなることがあり、プロセスがフリーズまたは終了することがあります。

手動でダウンロードする場合は、ダウンロード マネージャー ( FDMなど) を使用することで状況を大幅に改善できます。これは、10 年ほど前には不可欠であり、非常に人気があったプログラムのクラスですが、ネットワークがより良く高速に利用できるようになったため、現在ではその使用は急速に減少しています。同じファイルの複数のダウンロード セッションを、異なる位置から開始するチャンクで並行して開始し、失敗したセッションまたは古いセッションを自動的に再起動し、ワーク バランシングを実装します (チャンクのダウンロードが成功した後、まだダウンロードされている残りのチャンクの一部を 2 つのセッションに分割します)。最終的に、ダウンロードされたすべてのチャンクを完全な 1 つのファイルにつなぎ合わせます。全体として、ファイルのダウンロードを堅牢にし、接続が不十分な場合でもはるかに高速にすることができます。

現在、自動無人ダウンロードのために C# で同じダウンロード動作を実装しようとしています。これを実装する .NET フレームワークの既存のクラスが見当たらないので、手動で実装する方法のアドバイスを探しています (おそらく、いくつかのオープンソースの .NET ライブラリを使用して)。

4

1 に答える 1