マルチセグメント化ダウンロードのためにIDM のような動的セグメント化アルゴリズムを使用してダウンロードマネージャを開発します。スレッドはファイルの異なる領域に4GBの距離を持つ可能性があります。 の方が書き込み性能が非常に低下するためです。 私はこのデータを書き込む絶食する方法がわからない 私が代わりにStream.Writeの勝利のAPIのWriteFileを試してみましたが、私は、問題は非常にHDDヘッドの動き であることがわかった私は、各セグメントのためにメモリに5メガバイトViewStreamとメモリマップトファイルを試してみましたが、スピードを書きます私が期待したように増加しましたが、 MemoryMappedFileを使用するpsudoのコードはこれのようです。多分メモリマップトファイルを使用しての私のアプローチは、私があなたの代わりにWinAPIの標準ストリーム implemenetationを使用することをお勧め高速書き込み巨大ファイルマルチセグメント化C#
create MemoryMappedFile
for each segment
create 5MB ViewStream
write to memory stream
if data passed 5 MB or passed end of segment then close ViewStream and Create new ViewStream if not passed end of segment
どのような利点がありますか?私のファイルが5GBだと思う私は50 * 100MBを作成するすべてのファイルに書き込むために5GBのスペースを越えて移動する必要があります私の問題はこのエリアの秒あたりシークの数ですver – Hamid
あなたのネットワークはあなたのディスクより速いですか?一致するには良いSSDのRAIDを取得します。 –
いいえ10MBのネットワーク速度ではなく、約80MBのHDD書き込み速度 – Hamid