
线程睡眠很稳定,但无线程睡眠不稳定

线程调用类方法:

有参数时调用方法:

当参数为引用时:

当同一资源被多个线程同时引用时,为防止资源抢占,使用mutex,互斥锁
头文件#include "mutex"

lock_guard<类型> 变量名(锁变量);
作用,为防止死锁发生,它可以进行锁的自动加锁和解锁

unique_lock<类型> 变量名(锁名, 变参参数);

延时加锁,直接这样定义数据会出现混乱

必须手动锁定

直接用变参std::adopt_lock也会直接造成数据混乱

std::adopt_lock只是用于接管之前的锁mtx,所以在这一行之前需要对mtx进行lock才会真正的被lock