2013-02-11 99 views
1

注:我也有類似的問題,但都是指大型文件。這是少量讀寫不斷,許多文件將被寫入和讀取一次,因此性能將是一個問題。讀取/寫入隨機存取文件的最快方法?

目前,我使用的是隨機訪問文件的一個「賬戶」它的速度快與基本I/O:

raf.write(); 

我已經看到了隨機訪問文件與文件通道和緩衝I/O是什麼最快(對於小數據也是如此),你能否提供一個你的證明的例子。

回答

1

如果您希望跨越多個讀取/寫入過程的正確性,您將犧牲性能,或者像RandomAccessFile這樣的非緩衝API,或者是爲了進程間鎖定。

不能有效地比較一下,你可以在一個過程中實現無爭。

你可以調查MappedByteBuffer,但要注意它本身所帶來的問題,在其身後。

我個人會考慮使用一個數據庫。這就是他們的目的。

+0

感謝您的回覆。我只是計劃java api,但數據庫將是一個好主意......我會環顧四周,更新帖子。 – 2013-02-11 09:15:23

相關問題