C/C++ 多线程
环境:Windows, Visual Studio 2015
#include "stdafx.h"
#include <thread> //thread 头文件,实现了有关线程的类
#include <iostream>
void t1_run() {
// 线程1:循环1000次并输出"线程1正在运行"
for (int i = 0; i < 1000; i++)
{
std::cout << "线程1正在运行" << std::endl;
}
}
void t2_run() {
// 线程2:循环1000次并输出"线程2正在运行"
for (int i = 0; i < 1000; i++)
{
std::cout << "线程2正在运行" << std::endl;
}
}
int main()
{
// 创建两个线程对象,将要运行的函数作为参数
std::thread t1(t1_run);
std::thread t2(t2_run);
// join()函数,运行线程.
t1.join();
t2.join();
return 0;
}
Output: 两个线程交替运行
总结:
Step 1: 引入thread头文件
Step 2:编写一个或多个函数(void返回值)
Step 3:创建线程对象,std::thread()
Step 4:运行线程,join()
热门评论
运行之后,不是两个循环相互交替各执行一次,每次执行的结果不固定。想请问怎么让他们两个每次都只执行一次,交替进行