c++创建线程执行某个项业务,主线程也会执行该业务,如何编写
时间: 2024-03-29 08:39:57 浏览: 49
要实现主线程和子线程同时执行某个业务,可以使用C++中的线程库。具体实现方法如下:
```c++
#include <iostream>
#include <thread>
void task() {
// 子线程执行的任务
std::cout << "Task executed by sub thread." << std::endl;
}
int main() {
// 创建子线程
std::thread subThread(task);
// 主线程执行的任务
std::cout << "Task executed by main thread." << std::endl;
// 等待子线程执行完毕
subThread.join();
return 0;
}
```
在上面的代码中,我们定义了一个 `task` 函数作为子线程要执行的任务。在 `main` 函数中,我们创建了一个 `subThread` 子线程,并将 `task` 函数传递给该子线程。
在主线程中,我们也定义了一个任务,即输出一条信息到控制台。接下来,我们使用 `subThread.join()` 等待子线程执行完毕,然后程序退出。
这样,当我们运行程序时,就会同时执行子线程和主线程的任务。
注意,子线程和主线程是并发执行的,所以输出的结果可能不是固定的。如果需要保证输出的顺序,可以使用互斥锁等机制进行同步控制。
阅读全文