一个程序只有一个进程,但可以拥有至少一个线程(主线程),这些线程共同拥有进程的地址空间。
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显示删除拷贝构造, 不允许线程对象之间的拷贝 |