allocUnsafe
BufferConstructor.allocUnsafe
**allocUnsafe**(size): [Buffer](/references/product/variables/Buffer-1)
Allocates a new Buffer of size bytes. If size is larger than constants.MAX_LENGTH or smaller than 0, ERR_OUT_OF_RANGE is thrown.
The underlying memory for Buffer instances created in this way is _not_
_initialized_. The contents of the newly created Buffer are unknown and _may contain sensitive data_. Use Buffer.alloc() instead to initializeBuffer instances with zeroes.
A TypeError will be thrown if size is not a number.
The Buffer module pre-allocates an internal Buffer instance of
size Buffer.poolSize that is used as a pool for the fast allocation of newBuffer instances created using Buffer.allocUnsafe(), Buffer.from(array),
and Buffer.concat() only when size is less than or equal toBuffer.poolSize >> 1 (floor of Buffer.poolSize divided by two).
Use of this pre-allocated internal memory pool is a key difference between
calling Buffer.alloc(size, fill) vs. Buffer.allocUnsafe(size).fill(fill).
Specifically, Buffer.alloc(size, fill) will _never_ use the internal Bufferpool, while Buffer.allocUnsafe(size).fill(fill)_will_ use the internalBuffer pool if size is less
than or equal to half Buffer.poolSize. The
difference is subtle but can be important when an application requires the
additional performance that Buffer.allocUnsafe() provides.
Parameters
sizenumberRequiredBuffer.Returns
Since
v5.10.0