SpiecsEngine
 
Loading...
Searching...
No Matches

◆ Delete()

template<typename T >
void Spices::ObjectPool< T >::Delete ( T * obj)

Free a obj of T.

Parameters
[in]objObject to be free.

Call Destructor manually.

Set memory to 0.

insert to head.

Definition at line 233 of file ObjectPool.h.

234 {
238 obj->~T();
239
243 memset(obj, 0, sizeof(T));
244
249 m_FreeList = obj;
250
251 m_SpareBytes += sizeof(T);
252 }
static void *& PointerSpace(void *obj)
Get object first 4/8 bytes as a pointer.
void * m_FreeList
freelist.
Definition ObjectPool.h:128
size_t m_SpareBytes
Spare bytes of this objectPool.
Definition ObjectPool.h:133

References Spices::ObjectPool< T >::m_FreeList, and Spices::MemoryPool::PointerSpace().

Referenced by Spices::ObjectPool< T >::ThreadDelete().