典型的c++的賣票程序,看代碼即可明白:
#include<iostream>
#include<thread>
#include<mutex>
using namespace std;
static int ticket = 100;
mutex mytmx;
void sellticket()
{
while (ticket >= 0)
{
if (mytmx.try_lock())
{
cout << ticket << endl;
ticket--;
mytmx.unlock();
}
}
}
int main()
{
const int group = 3;
thread mythread[group];
for (int i = 0; i < 3; i++)
{
mythread[i] = thread(sellticket);
}
for (int i = 0; i < 3; i++)
{
mythread[i].join();
}
return 0;
}