std::thread线程用法
时间: 2024-03-06 22:45:02 浏览: 145
线程thread
std::thread是C++11标准库中提供的线程类,用于创建和管理多线程。它可以让我们在程序中同时执行多个任务,提高程序的并发性和效率。
使用std::thread创建线程的基本步骤如下:
1. 包含头文件:`#include <thread>`
2. 定义线程函数:创建一个函数,作为线程的入口点,该函数将在新线程中执行。
3. 创建线程对象:使用std::thread类创建一个线程对象,并将线程函数作为参数传递给它。
4. 启动线程:调用线程对象的`std::thread::join()`或`std::thread::detach()`方法来启动线程的执行。
下面是一个简单的示例代码,演示了std::thread的基本用法:
```cpp
#include <iostream>
#include <thread>
// 线程函数
void threadFunction() {
std::cout << "Hello from thread!" << std::endl;
}
int main() {
// 创建线程对象,并传入线程函数
std::thread myThread(threadFunction);
// 等待线程执行完毕
myThread.join();
std::cout << "Hello from main thread!" << std::endl;
return 0;
}
```
在上面的示例中,我们定义了一个名为`threadFunction`的线程函数,它会输出一条消息。在`main`函数中,我们创建了一个名为`myThread`的线程对象,并将`threadFunction`作为参数传递给它。然后,我们调用`myThread.join()`等待线程执行完毕。最后,主线程输出一条消息。
阅读全文