2014-10-01 43 views
1

我對Node和文件系統流的關注很新。我想現在如果readFile函數可能讀取文件統計信息,請獲取大小並創建一個分配了所有文件大小的單個緩衝區。換句話說:我知道它會加載整個文件,好的。但是,它是通過將文件內部分割到更多緩衝區還是僅使用一個較大的緩衝區來實現的?根據使用的方法,它具有不同的內存使用/泄漏含義。節點的readFile()是否使用單個Buffer分配了所有文件大小?

回答

1

發現這裏的章節9.3答案:

http://book.mixu.net/node/ch9.html

正如預期的那樣,READFILE使用1全緩衝。從上面的鏈接,這是READFILE的執行:

//全緩衝存取 [100 MB的文件] - > 1. [100分配緩衝器MB] - > 2讀取並返回100 Mb的緩衝]

所以,如果您使用readFile(),您的應用程序將一次只需要所有文件大小的內存。 ()或createReadStream()

要將該內存分塊
相關問題