0%

C++并发与多线程

一个程序只有一个进程,但可以拥有至少一个线程(主线程),这些线程共同拥有进程的地址空间。

C++11通过std::thread进行多线程编程

1. 构造函数

函数 类别 作用
thread() noexcept 默认构造函数 创建一个线程,但什么也不做
template< class Function, class… Args >
explicit thread( Function&& f, Args&&… args )
初始化构造函数 创建一个线程,以args为参数执行fn函数
thread( thread&& other ) noexcept 移动构造函数 将 other 的线程所有权转移给新的thread 对象
thread( const thread& ) = delete 复制构造函数 使用=delete显示删除拷贝构造, 不允许线程对象之间的拷贝