Basically this is a container of objects which reduces the overhead of creating objects each time. This can perform a certain task by allocating an object in the memory pool and can re-use it from memory pool according to the requirement.
Whenever the user will request to create an object, the pool manager will perform task for allocating an object from the pool which helps to minimize the memory consumption. This is used to enhance the performance and reduce the load of creation of new objects.
Asked In: Many Interviews |