Patent attributes
A memory management system implements instructions including maintaining multiple pool data structures, each associated with a linked list of objects and including a head pointer pointing to the first element in the linked list. The instructions include, in response to a first object no longer being needed, recycling the first object by identifying a first pool data structure that corresponds to the first object and inserting the first object into the linked list without deallocating the memory for the first object. The instructions include, in response to a new object request, identifying a second pool data structure according to a feature of the new object. If the corresponding linked list is empty, memory is allocated for the new object and the new object is assigned to the second pool data structure. If the linked list is not empty, the first object is removed from the linked list and returned.