我是否需要在push_back pop_front场景中使用互斥锁锁定STL列表?

jac*_*hab 8 c++ multithreading stl

我有一个线程推送到STL列表和从列表弹出前面的另一个线程.在这种情况下,是否需要使用互斥锁锁定列表?

Joa*_*lva 12

来自SGI的线程安全STL:

如果多个线程访问单个容器,并且至少有一个线程可能写入,则用户负责确保在容器访问期间线程之间的互斥.

由于你的两个线程都修改了列表,我想你必须锁定它.