Poco线程池使用实例

写一个Poco线程池的简单例子:

vector vecTask;
...                        //创建任务数组
int maxCapacity(16);
Poco::ThreadPool threadpool(2, maxCapacity, 60, POCO_THREAD_STACK_SIZE);
for(int i = 0; i < vecTask.size(); i++)
{
    while (threadpool.available() == 0)
	{
		Poco::Thread::sleep(1000);
	}

    threadpool.start(*vecGetStiTask[i]);
}

threadpool.joinAll();

//不要忘了释放vecTask的内存

不要忘记包含相关头文件:#include "Poco\ThreadPool.h"       #include "Poco\Task.h"

关于Poco线程池的基本知识讲解网上有很多,可自行检索阅读。本文只是举个简单使用例子,方便新手上手。

如对本例不是很满意,可参考另一篇博客中的实例:https://blog.csdn.net/zhaojunwuiris/article/details/81201297

你可能感兴趣的:(Poco)