內存映射文件 I/O

內存映射文件 I/O 是一種讀和寫文件數據的方法,它可以比常規的基於流或者基於通道的 I/O 快得多。

內存映射文件 I/O 是通過使文件中的數據神奇般地出現爲內存數組的內容來完成的。這其初聽起來似乎不過就是將整個文件讀到內存中,但是事實上並不是這樣。一般來說,只有文件中實際讀取或者寫入的部分纔會送入(或者 映射 )到內存中。

內存映射並不真的神奇或者多麼不尋常。現代操作系統一般根據需要將文件的部分映射爲內存的部分,從而實現文件系統。Java 內存映射機制不過是在底層操作系統中可以採用這種機制時,提供了對該機制的訪問。

儘管創建內存映射文件相當簡單,但是向它寫入可能是危險的。僅只是改變數組的單個元素這樣的簡單操作,就可能會直接修改磁盤上的文件。修改數據與將數據保存到磁盤是沒有分開的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章