背景 在日常的工作中,我们经常会用到多线程编程,但是如果使用普通的cout进行输出,会有问题。比如多线程同时竞争cout,会导致输出乱序 看一下结果: 可以看出,有部分输出乱序了,这是因为cout不是线程安全的 解决方法 使用printf对cout进行加锁 本文主要讲一下第二种方法 首先定义一个互斥量,就是std::mutex,然后在调用print函数前进行加锁 代码部分