固定大小的工作线程池 更多...
#include <sttnet.h>
Public 成员函数 | |
| WorkerPool (size_t n) | |
| 构造函数,创建指定数量的工作线程 更多... | |
| ~WorkerPool () | |
| 析构函数 更多... | |
| void | submit (Task task) |
| 向线程池提交一个任务 更多... | |
| void | stop () |
| 停止线程池并等待所有线程退出 更多... | |
固定大小的工作线程池
WorkerPool 内部维护一个任务队列和若干工作线程。 每个工作线程循环从队列中取出任务并执行。
|
inlineexplicit |
构造函数,创建指定数量的工作线程
| n | 工作线程数量 |
构造完成后,所有线程立即启动并进入等待状态。
|
inline |
析构函数
析构时会自动调用 stop(), 确保所有线程退出并被正确 join。
|
inline |
停止线程池并等待所有线程退出
调用后:
该函数可安全重复调用。
|
inline |
向线程池提交一个任务
| task | 可调用对象,函数签名为 void() |
任务会被放入内部队列,并由某个工作线程异步执行。
1.8.5