Type of the object.
Get number of free resources.
Get number of used resources.
Acquire a new object resource from pool.
This operation has O(1) complexity.
Arguments forwarded to object initializer.
Object resource.
Clears the object resources pool.
After this operation, pool should no longer be used.
This operation has O(1) complexity.
IMPORTANT! This method won't call destructors of the resources, it will only reset internal storage of resources
Release object resource.
This operation has O(1) complexity.
Object resource.
Release all object resources.
Notice that objects won't be de-allocated, only their destructors will be called.
This operation has O(n) complexity.
Pool of object resources.
The internal implementation keeps resources into a single {@link Array}.
This implementation has advantage over DLLObjectPool, as it consumes less memory, while keeping operations complexity constant.