FCT
载入中...
搜索中...
未找到
FCT::ObjectPool< T, Args > 模板类 参考

#include <ObjectPool.h>

FCT::ObjectPool< T, Args > 的协作图:
Collaboration graph

Public 类型

using DestroyCallback = std::function<void(T*)>

Public 成员函数

 ObjectPool (Args... args)
 ~ObjectPool ()
T * alloc ()
void setDestroyCallback (DestroyCallback callback)

Protected 成员函数

T * addSingle ()

Protected 属性

size_t m_size
std::vector< ObjectPoolChunk< T > > m_chunks
boost::lockfree::queue< size_t, boost::lockfree::capacity< 1024 > > m_freeIndices
DestroyCallback m_destroyCallback
std::tuple< Args... > m_constructorArgs

详细描述

template<typename T, typename... Args>
class FCT::ObjectPool< T, Args >

在文件 ObjectPool.h66 行定义.

成员类型定义说明

◆ DestroyCallback

template<typename T, typename... Args>
using FCT::ObjectPool< T, Args >::DestroyCallback = std::function<void(T*)>

在文件 ObjectPool.h69 行定义.

构造及析构函数说明

◆ ObjectPool()

template<typename T, typename... Args>
FCT::ObjectPool< T, Args >::ObjectPool ( Args... args)
inlineexplicit

在文件 ObjectPool.h70 行定义.

◆ ~ObjectPool()

template<typename T, typename... Args>
FCT::ObjectPool< T, Args >::~ObjectPool ( )
inline

在文件 ObjectPool.h77 行定义.

成员函数说明

◆ addSingle()

template<typename T, typename... Args>
T * FCT::ObjectPool< T, Args >::addSingle ( )
inlineprotected

在文件 ObjectPool.h99 行定义.

这是这个函数的调用关系图:

◆ alloc()

template<typename T, typename... Args>
T * FCT::ObjectPool< T, Args >::alloc ( )
inline

在文件 ObjectPool.h81 行定义.

函数调用图:

◆ setDestroyCallback()

template<typename T, typename... Args>
void FCT::ObjectPool< T, Args >::setDestroyCallback ( DestroyCallback callback)
inline

在文件 ObjectPool.h94 行定义.

类成员变量说明

◆ m_chunks

template<typename T, typename... Args>
std::vector<ObjectPoolChunk<T> > FCT::ObjectPool< T, Args >::m_chunks
protected

在文件 ObjectPool.h139 行定义.

◆ m_constructorArgs

template<typename T, typename... Args>
std::tuple<Args...> FCT::ObjectPool< T, Args >::m_constructorArgs
protected

在文件 ObjectPool.h142 行定义.

◆ m_destroyCallback

template<typename T, typename... Args>
DestroyCallback FCT::ObjectPool< T, Args >::m_destroyCallback
protected

在文件 ObjectPool.h141 行定义.

◆ m_freeIndices

template<typename T, typename... Args>
boost::lockfree::queue<size_t,boost::lockfree::capacity<1024> > FCT::ObjectPool< T, Args >::m_freeIndices
protected

在文件 ObjectPool.h140 行定义.

◆ m_size

template<typename T, typename... Args>
size_t FCT::ObjectPool< T, Args >::m_size
protected

在文件 ObjectPool.h138 行定义.


该类的文档由以下文件生成: