std::thread 的使用
时间: 2024-01-04 13:19:32 浏览: 32
std::thread是C++11中引入的一个类,用于创建和管理线程。它可以用于并发执行多个任务,提高程序的性能和效率。
以下是两个std::thread的使用示例:
1. 使用std::thread创建一个线程并传递参数:
```cpp
#include <iostream>
#include <thread>
void some_function(int arg) {
std::cout << "Thread function. Argument: " << arg << std::endl;
}
int main() {
int arg = 42;
std::thread t(some_function, arg); // 创建一个线程,并传递参数arg
t.join(); // 等待线程执行完毕
return 0;
}
```
2. 使用std::thread创建一个线程并返回:
```cpp
#include <iostream>
#include <thread>
void some_other_function(int arg) {
std::cout << "Thread function. Argument: " << arg << std::endl;
}
std::thread create_thread() {
int arg = 42;
std::thread t(some_other_function, arg); // 创建一个线程,并传递参数arg
return t; // 返回线程对象
}
int main() {
std::thread t = create_thread(); // 创建一个线程并返回
t.join(); // 等待线程执行完毕
return 0;
}
```