memory-allocator
A simple ArrayBuffer memory allocator for JS. It can be found on NPM as
memory-allocator or
@warriors-life/memory-allocator, or on
GitHub Packages as latter.
Not to be confused with the memory-pool package, which removes the overhead of object creation by maintaining a pool of them and modifying their properties (see also PrimitivePool).
License
MIT.
Contributing
Feel free to
open an issue or
make a pull request! You can find contributing guidelines
here and as a start you can work on any issue labelled
"good first issue".
Documentation
The package exports
MemoryAllocator class as the default and also exports
MemoryRef class.
class MemoryAllocator
The main class.
$3
bufferSize parameters controls minimal size of the new array buffers created by MemoryAllocator when it is impossible to allocate data in old buffers.
$3
Manually add a buffer of the specified size.
$3
Allocate a slice of memory of the specified size. The resulting memory ref is returned.
class MemoryRef
Reference to a slice of memory. Note that underlying slice may be relocated during a manual defragmentation.
$3
Mark the reference as freed. It can no longer be used after that and the underlying memory may be redistributed.
$3
Returns a DataView of the underlying memory, which can be read and written to.
$3
Returns a typed array mapped to the underlying memory, which can be read and written to.