2017-02-14 3 views
0

私たちはjavaでP2Pネットワークをエミュレートしています。したがって、ファイルをチャンク(チェックサム付き)に分割して、すべてのパーツを取得したら個々のチャンクを元のファイルに再コンパイルすることができます。個々のパーツをダウンロードしている最中にそのパーツを保存するにはどうすればいいですか?大きなファイルを構成する不連続なデータを一時的に保存する最も効率的な方法

私はちょうど別々のファイルとして各チャンクを格納することを考えていました...しかし、20000チャンクがあれば、それは多くのファイルを作成します。これが最善の方法ですか?

ありがとうございました

+0

チャンクはどれくらいの大きさがありますか? – Thomas

答えて

0

チャンクをメモリまたはファイルに保存してください。ここで議論することはあまりありません。あなたのニーズに合わせて、チャンク数と実際のサイズの間の完全な比を見つけてください。

アプリケーションがクラッシュしてもデータが完全に失われず、ダウンロードが続行できるため、ファイルはより合理的です。

0

スレッシュホールドに達するまでメモリに書き込みます。その時点で、メモリをディスクにダンプし、メモリに読み込みを続けます。ファイル転送が完了すると、現在メモリに保存されているものを取り出し、ディスクに保存されているものと連結することができます。

関連する問題