C++11如何设计多线程使其同时运行两个无线循环
使用C++11中的std::thread库可以实现多线程编程。可以创建两个线程,每个线程都运行一个无限循环。
示例代码如下:
#include <iostream>
#include <thread>
void loop1() {
while(true) {
std::cout << "Loop 1" << std::endl;
}
}
void loop2() {
while(true) {
std::cout << "Loop 2" << std::endl;
}
}
int main() {
std::thread t1(loop1);
std::thread t2(loop2);
t1.join();
t2.join();
return 0;
}
在上面的示例中,我们定义了两个函数loop1和loop2,它们分别代表两个无限循环。在main函数中,我们创建了两个线程t1和t2,分别运行loop1和loop2。最后,我们调用join函数等待两个线程结束。
注意,两个线程在输出时有可能会交错,因为它们是并行运行的。如果需要保证它们顺序输出,可以使用互斥锁或条件变量进行同步
原文地址: https://www.cveoy.top/t/topic/fnN3 著作权归作者所有。请勿转载和采集!