Skip to content

Neirea/simple-object-pool

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Simple Object Pool

Super lightweight implementation of factory-based object pool.
There is no error handling if the same object is released into the pool to keep it fast.

Library API

import ObjectPool from "simple-object-pool";

const objPool = new ObjectPool(() => {
    return { hello: "world" };
});

Get objects from pool

const obj1 = objPool.get();
const obj2 = objPool.get();
const obj3 = objPool.get();

Put objects back into the pool

objPool.release(obj1);
// put multiple objects back into the pool
objPool.releaseAll([obj2, obj3]);
console.log(objPool.size()); // 3

Delete all objects in a pool

objPool.clear();
console.log(objPool.size()); // 0

License

License

All code and documentation are (c) 2023 Eugene Shumilin and released under the MIT License. A copy of the MIT License is also included.