2015-09-28 104 views
3

我想使用緩衝區來存儲稀疏索引。 如果我分配了一個例如10​​24字節的緩衝區並有效存儲了128個字節,那麼會在內存中分配多少字節?node.js中的緩衝區分配

+0

你叫什麼緩衝區?一個字符串?一個字節數組? –

+0

https://nodejs.org/api/buffer.html – Gael

+1

可能不是v8的一部分,但節點js – Gael

回答

1

根據該構造DOC:

新緩衝液(大小)#

size數 分配一個大小字節一個新的緩衝區。大小必須小於32位體系結構上的1,073,741,824字節(1 GB)或64位體系結構上的2,147,483,648字節(2 GB),否則將引發RangeError

與ArrayBuffers不同,緩衝區的底層內存未初始化。所以新創建的Buffer的內容是未知的,可能包含敏感數據。使用buf.fill(0)將緩衝區初始化爲零。

似乎是整個內存分配,但沒有歸零。

+0

是的,我已經讀過,但我正在考慮一個可能的內存分配優化。如果沒有,我會做我自己的。 – Gael