Console Library 8.0.0
A header-only library that makes C++ simple
Loading...
Searching...
No Matches
console::pool Namespace Reference

Functions

ThreadPool & instance ()
 获取线程池单例。
template<class F, class... Args>
auto submit (F &&f, Args &&...args) -> std::future< decltype(std::forward< F >(f)(std::forward< Args >(args)...))>
 提交任务到线程池。
template<class F, class Container>
auto map (F &&f, const Container &c) -> std::vector< std::future< decltype(f(std::declval< typename Container::value_type >()))> >
 对容器中的元素应用函数,并返回结果的 future 对象。
void wait ()
 等待所有任务完成。
size_t waiting_task_count ()
 获取等待执行的任务数量。
size_t active_task_count ()
 获取当前正在执行的任务数量。
size_t active_worker_count ()
 获取当前正在执行的工作线程数量。
void close ()
 关闭线程池。
void abort ()
 中止线程池。

Function Documentation

◆ abort()

void console::pool::abort ( )
inline

中止线程池。

◆ active_task_count()

size_t console::pool::active_task_count ( )
inline

获取当前正在执行的任务数量。

Returns
size_t 当前正在执行的任务数量。

◆ active_worker_count()

size_t console::pool::active_worker_count ( )
inline

获取当前正在执行的工作线程数量。

Returns
size_t 当前正在执行的工作线程数量。

◆ close()

void console::pool::close ( )
inline

关闭线程池。

◆ instance()

ThreadPool & console::pool::instance ( )
inline

获取线程池单例。

Returns
ThreadPool& 线程池单例。

◆ map()

template<class F, class Container>
auto console::pool::map ( F && f,
const Container & c ) -> std::vector< std::future< decltype(f( std::declval< typename Container::value_type >()))> >
inline

对容器中的元素应用函数,并返回结果的 future 对象。

Template Parameters
F函数类型。
Container容器类型。
Parameters
f函数。
c容器。
Returns
std::vector<std::future<...>> 结果的 future 对象。

◆ submit()

template<class F, class... Args>
auto console::pool::submit ( F && f,
Args &&... args ) -> std::future< decltype(std::forward< F >(f)(std::forward< Args >(args)...))>
inline

提交任务到线程池。

Template Parameters
F任务函数类型。
Args任务函数参数类型。
Parameters
f任务函数。
args任务函数参数。
Returns
std::future<...>任务的 future 对象。

◆ wait()

void console::pool::wait ( )
inline

等待所有任务完成。

◆ waiting_task_count()

size_t console::pool::waiting_task_count ( )
inline

获取等待执行的任务数量。

Returns
size_t 等待执行的任务数量。