![](/img/trans.png)
[英]Java: Retrieve a random discontinuous Sublist of an ArrayList (most efficient way)
[英]most efficient way to temporarily store discontinuous data composing a larger file
我們正在用Java模擬p2p網絡。 因此,我們將文件分為多個塊(帶有校驗和),以便一旦我們擁有所有部分,就可以將各個塊重新編譯為原始文件。 在下載各個部分時,最好的存儲方式是什么?
我當時只是想將每個塊存儲為一個單獨的文件...但是,如果有20000個塊,它將創建盡可能多的文件。 這是最好的方法嗎?
謝謝
要么將塊保留在內存中,要么保留在文件中。 這里沒有什么要討論的。 找到了塊數與實際大小之間的理想比例,以滿足您的需求。
文件聽起來更合理,因為在應用程序崩潰的情況下數據不會完全丟失,並且可以繼續下載。
我會寫內存,直到達到某個閾值為止,這時將內存轉儲到磁盤,並繼續讀入內存。 文件傳輸完成后,您可以獲取當前存儲在內存中的內容,並將其與磁盤上可能存儲的內容連接起來。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.