Boost线程学习简记
来源:互联网 发布:美股券商知乎 编辑:程序博客网 时间:2024/06/08 09:42
Boost线程学习简记
头文件
#include<boost/thread.hpp>
创建线程
boost::thread是线程类,创建线程非常简单,只需要创建一个thread对象,并把线程工作函数作为参数传给构造参数。
void output()
{
std::cout<<"output"<<std::endl;
}
…
boost::thread t(output);
传递参数
如果我们的工作函数需要参数怎么办呢?
void output2(int v)
{
std::cout<<"output : "<<v<<std::endl;
}
…
boost::thread t(output2,4);
如果我们的线程函数有多个参数,不论什么类型,都写成如下形式(只要不超过十个)
boost::thread t(fun,arg1,arg2,…);
合并到主线程
t.join();
等待线程函数执行完毕
Sleep函数
boost::this_thread::sleep()
这里的sleep()函数并不是休眠多久的意思,而是睡眠到什么时候。
所以如果我们想要他休眠一秒钟,就要先计算一秒钟之后的时间是多少然后传给sleep
//计算出sec+0.0000000001*nsec秒后的时间
boost::xtime getNextTime(int sec,int nsec)
{
boost::xtime t;
boost::xtime_get(&t, boost::TIME_UTC);
t.sec += sec;
t.nsec += nsec;
returnt;
}
…
boost::this_thread::sleep(getNextTime(1,0));
- Boost线程学习简记
- Boost线程库学习
- boost 线程学习bind
- 学习简记
- Boost线程库学习笔记
- Boost线程库学习笔记
- Boost线程库学习笔记
- Boost线程库学习笔记
- Boost线程库学习笔记
- Boost线程库学习笔记
- boost 库的 线程学习
- Windows线程编程简记
- C语言学习简记
- C++学习简记
- Python学习简记
- DVB学习简记
- jsp学习-----简记
- C#学习笔记 简记
- 常用正则表达式
- QT4环境配置
- 自定义F4HELP
- VC读写INI文件
- 一个单片机的boot code(基于toshiba单片机tmp91fw27)
- Boost线程学习简记
- Java面向对象特性
- Linux操作系统下动态库的编写与调用
- Linq to sql(八):继承与关系
- 菩提本无树 明镜亦非台 本来无一物 何处惹尘埃
- 线程池的实现
- 如何在.net开发的代码中遍历所有的图形对象,并判断是什么类型的对象!
- SQL数据多行合并成一行多列
- 三个好用的中文免费刻录软件