boost的thread库

今天因为工作上的一个小任务,所以想测试一下多线程的性能,于是借机看了下boost的thread库。

一般的创建线程:

void test_func(int id);

boost::thread t = boost::thread(test_func, 10);
t.join();

很简单啊,直接把函数填进去,如果需要传参数的话,参数接着往后填。
如果想等的话,调用一下join就阻塞到那里了。cool。

就这么简单。

线程组(thread_group):
这个东西的介绍和接口都很简单。来段代码比较明显:

void test_func();

boost::thread_group group;
for (int i = 0; i < 10; i++)
{
group.create_thread(test_func);
}
group.join_all();

也是很简单,对吧。

再具体的可以看看文档,不过老实说boost的文档写的我感觉不太好,一大坨在那,得找半天。。。

先工作吧,有空再看看^___^

原文地址:https://www.cnblogs.com/chaoswong/p/2297434.html