fastdo  0.6.8
winux::ThreadPool类 参考

线程池,创建一组线程等待着从任务队列中获取任务执行 更多...

#include <threadtask.hpp>

Public 成员函数

 ThreadPool ()
 构造函数0 更多...
 
 ThreadPool (int threadCount)
 构造函数1 更多...
 
virtual ~ThreadPool ()
 
ThreadPoolstartup (int threadCount)
 启动指定数量的线程 更多...
 
template<typename _Fx , typename... _ArgType>
Task< typename FuncTraits< _Fx >::ReturnType > task (_Fx fn, _ArgType &&...arg)
 创建一个新任务 更多...
 
void stop ()
 主动停止线程池运行 更多...
 
bool wait (double sec=-1)
 wait(sec>0)等待一定的时间长用于等待任务运行。当调用stop()后,wait(sec<0)等待线程组线程全部正常退出 更多...
 
void whenEmptyStopAndWait ()
 当任务队列为空,任务链为0,就停止线程池运行,并等待线程组线程正常退出 更多...
 
size_t getTaskCount () const
 队列里的任务数 更多...
 
int incTaskChainCount ()
 
int decTaskChainCount ()
 

友元

struct TaskCtx
 

详细描述

线程池,创建一组线程等待着从任务队列中获取任务执行

在文件 threadtask.hpp159 行定义.

构造及析构函数说明

winux::ThreadPool::ThreadPool ( )
inlineexplicit

构造函数0

在文件 threadtask.hpp163 行定义.

winux::ThreadPool::ThreadPool ( int  threadCount)
inlineexplicit

构造函数1

参数
threadCount启动的线程数量

在文件 threadtask.hpp170 行定义.

virtual winux::ThreadPool::~ThreadPool ( )
inlinevirtual

在文件 threadtask.hpp175 行定义.

成员函数说明

int winux::ThreadPool::decTaskChainCount ( )
inline

在文件 threadtask.hpp265 行定义.

size_t winux::ThreadPool::getTaskCount ( ) const
inline

队列里的任务数

在文件 threadtask.hpp253 行定义.

int winux::ThreadPool::incTaskChainCount ( )
inline

在文件 threadtask.hpp259 行定义.

ThreadPool& winux::ThreadPool::startup ( int  threadCount)
inline

启动指定数量的线程

在文件 threadtask.hpp181 行定义.

函数调用图:

void winux::ThreadPool::stop ( )
inline

主动停止线程池运行

在文件 threadtask.hpp223 行定义.

template<typename _Fx , typename... _ArgType>
Task<typename FuncTraits<_Fx>::ReturnType> winux::ThreadPool::task ( _Fx  fn,
_ArgType &&...  arg 
)
inline

创建一个新任务

在文件 threadtask.hpp217 行定义.

bool winux::ThreadPool::wait ( double  sec = -1)
inline

wait(sec>0)等待一定的时间长用于等待任务运行。当调用stop()后,wait(sec<0)等待线程组线程全部正常退出

在文件 threadtask.hpp231 行定义.

void winux::ThreadPool::whenEmptyStopAndWait ( )
inline

当任务队列为空,任务链为0,就停止线程池运行,并等待线程组线程正常退出

在文件 threadtask.hpp237 行定义.

函数调用图:

友元及相关函数文档

friend struct TaskCtx
friend

在文件 threadtask.hpp287 行定义.


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