fastdo  0.5.12
winux::Task< _Ty > 模板类 参考

代表投递到线程池的一个任务,用于等待执行完毕获取返回值或者接着投递下一个任务 更多...

#include <threads.hpp>

Public 类型

using ReturnType = _Ty
 

Public 成员函数

template<typename _Fx , typename... _ArgType>
 Task (ThreadPool *pool, _Fx fnRoutine, _ArgType &&...argRoutine)
 Ctor1 创建一个任务,需要提供一个线程池 更多...
 
template<typename _Fx , typename... _ArgType>
 Task (SharedPointer< TaskCtxT< void > > waitTaskCtx, _Fx fnRoutine, _ArgType &&...argRoutine)
 Ctor2-1 等待一个任务结束并创建一个新的任务 更多...
 
template<typename _Fx , typename... _ArgType>
 Task (SharedPointer< TaskCtxT< void > > waitTaskCtx, _Fx fnRoutine, typename FuncTraits< _Fx >::ClassType *obj, _ArgType &&...argRoutine)
 Ctor2-2 等待一个任务结束并创建一个新的任务 更多...
 
template<typename _Ty2 , typename _Fx , typename... _ArgType>
 Task (SharedPointer< TaskCtxT< _Ty2 > > waitTaskCtx, _Fx fnRoutine, _ArgType &&...argRoutine)
 Ctor3-1 等待一个任务结束并把其返回值移动给一个新的任务 更多...
 
template<typename _Ty2 , typename _Fx , typename... _ArgType>
 Task (SharedPointer< TaskCtxT< _Ty2 > > waitTaskCtx, _Fx fnRoutine, typename FuncTraits< _Fx >::ClassType *obj, _ArgType &&...argRoutine)
 Ctor3-2 等待一个任务结束并把其返回值移动给一个新的任务 更多...
 
virtual ~Task ()
 
template<typename _Fx , typename... _ArgType>
Task< typename FuncTraits< _Fx >::ReturnTypethen (_Fx fn, _ArgType &&...arg)
 等待本任务结束并开启下一个新任务,把返回值传给新任务作参数 更多...
 
void wait (double sec=-1)
 等待任务执行完毕 更多...
 
ReturnType get ()
 等待任务结束并获取返回值 更多...
 

友元

template<typename _Ty0 >
class Task
 

详细描述

template<typename _Ty>
class winux::Task< _Ty >

代表投递到线程池的一个任务,用于等待执行完毕获取返回值或者接着投递下一个任务

在文件 threads.hpp525 行定义.

成员类型定义说明

template<typename _Ty>
using winux::Task< _Ty >::ReturnType = _Ty

在文件 threads.hpp753 行定义.

构造及析构函数说明

template<typename _Ty>
template<typename _Fx , typename... _ArgType>
winux::Task< _Ty >::Task ( ThreadPool pool,
_Fx  fnRoutine,
_ArgType &&...  argRoutine 
)
inline

Ctor1 创建一个任务,需要提供一个线程池

在文件 threads.hpp757 行定义.

函数调用图:

template<typename _Ty>
template<typename _Fx , typename... _ArgType>
winux::Task< _Ty >::Task ( SharedPointer< TaskCtxT< void > >  waitTaskCtx,
_Fx  fnRoutine,
_ArgType &&...  argRoutine 
)
inline

Ctor2-1 等待一个任务结束并创建一个新的任务

在文件 threads.hpp777 行定义.

函数调用图:

template<typename _Ty>
template<typename _Fx , typename... _ArgType>
winux::Task< _Ty >::Task ( SharedPointer< TaskCtxT< void > >  waitTaskCtx,
_Fx  fnRoutine,
typename FuncTraits< _Fx >::ClassType *  obj,
_ArgType &&...  argRoutine 
)
inline

Ctor2-2 等待一个任务结束并创建一个新的任务

在文件 threads.hpp816 行定义.

函数调用图:

template<typename _Ty>
template<typename _Ty2 , typename _Fx , typename... _ArgType>
winux::Task< _Ty >::Task ( SharedPointer< TaskCtxT< _Ty2 > >  waitTaskCtx,
_Fx  fnRoutine,
_ArgType &&...  argRoutine 
)
inline

Ctor3-1 等待一个任务结束并把其返回值移动给一个新的任务

在文件 threads.hpp855 行定义.

函数调用图:

template<typename _Ty>
template<typename _Ty2 , typename _Fx , typename... _ArgType>
winux::Task< _Ty >::Task ( SharedPointer< TaskCtxT< _Ty2 > >  waitTaskCtx,
_Fx  fnRoutine,
typename FuncTraits< _Fx >::ClassType *  obj,
_ArgType &&...  argRoutine 
)
inline

Ctor3-2 等待一个任务结束并把其返回值移动给一个新的任务

在文件 threads.hpp896 行定义.

函数调用图:

template<typename _Ty>
virtual winux::Task< _Ty >::~Task ( )
inlinevirtual

在文件 threads.hpp935 行定义.

成员函数说明

template<typename _Ty>
ReturnType winux::Task< _Ty >::get ( )
inline

等待任务结束并获取返回值

在文件 threads.hpp953 行定义.

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

等待本任务结束并开启下一个新任务,把返回值传给新任务作参数

在文件 threads.hpp941 行定义.

template<typename _Ty>
void winux::Task< _Ty >::wait ( double  sec = -1)
inline

等待任务执行完毕

在文件 threads.hpp947 行定义.

友元及相关函数文档

template<typename _Ty>
template<typename _Ty0 >
friend class Task
friend

在文件 threads.hpp962 行定义.


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