先上代码:
#include<mutex>
#include<condition_variable>
#include <iostream>
#include<string>
using namespace std;
void PrintId(int id)
{
cout<<"ID:"<<id<<endl;
}
int main()
{
thread threads[10];
for (int i = 0;i < 10;i++)
{
threads[i] = thread(PrintId,i);
}
for (auto & t : threads)
{
t.join();
}
}
输出:
改一下,加上互斥量mutex:(PrintId(int id)改变,main()不变)
mutex mu;
void PrintId(int id)
{
mu.lock();
cout<<"ID:"<<id<<endl;
mu.unlock();
}
输出:
mutex常用方法:.lock() .unlock() .try_lock();
互斥变量一


2494

被折叠的 条评论
为什么被折叠?



