c++ for循环创建线程
时间: 2023-10-18 22:59:56 浏览: 176
在 C++ 中,可以使用 for 循环来创建多个线程。以下是一个示例代码:
```cpp
#include <iostream>
#include <thread>
void threadFunction(int i) {
std::cout << "Thread " << i << " is running" << std::endl;
}
int main() {
const int numThreads = 5;
// 创建多个线程
std::thread threads[numThreads];
for (int i = 0; i < numThreads; ++i) {
threads[i] = std::thread(threadFunction, i);
}
// 等待所有线程完成
for (int i = 0; i < numThreads; ++i) {
threads[i].join();
}
return 0;
}
```
在上面的代码中,我们定义了一个 `threadFunction` 函数,它将作为每个线程的入口点。在 `main` 函数中,我们通过循环创建了多个线程,并将每个线程与 `threadFunction` 函数绑定。然后,我们使用 `join` 函数等待所有线程完成执行。
请注意,在创建线程时,我们使用了一个数组 `threads` 来存储线程对象。这是因为我们需要在后面的代码中对每个线程进行操作,例如等待线程完成。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)