2011-09-23 34 views
0

有沒有辦法讓我可以直接在內存中打開和加載文件? 我有很多遺留代碼可以打開網絡上存在的文件,然後 可以從這個文件中查找和讀取。我想避免讀取並通過網絡搜索。 因此,如果我可以加載文件在內存中,當我打開它時,我可以有效地尋找。 有什麼建議嗎? 我正在使用Linux上的C。打開和加載內存中的文件的方式

+0

您是否嘗試過'的mmap(2)'? – glglgl

+0

mmpa會返回一個指向加載文件的內存位置的指針。我的遺留代碼在文件指針上工作。然後我需要爲此更改很多代碼。 – user900563

回答

2

您可以使用mmap函數或純openread將它們全部放入您用malloc分配的緩衝區中。

但請做基準。你可能從這個「手動緩衝」中獲得很少(或根本沒有)改進。操作系統已經爲你緩存。

+0

mmap鏈接有些中斷 – bugwheels94

+0

@Ankit:謝謝,修正 – Mat

相關問題