STL容器是线程安全的吗? C++标准模板库(STL)的容器本身不是线程安全的。这意味着在没有适当的外部同步机制的情况下,从多个线程同时访问同一个STL容器可能会导致数据竞争和不可预测的行为。 并发读取:如果多个线程仅仅是读取STL容器的数据,而没有任何写入操作,通常是安全的。 读写操作:如果至少有一个线程在修改容器...
只是读取元素的值,是线程安全的。假如两个线程同时修改同一个元素的值,或者同时插入/删除元素,就会导致data race。两个线程同时修改元素的值,但针对的是不同的元素,不会造成data race。特例是vector<bool>,标准委员会也承认vector<bool>是个失败品,一般建议根本不要用 以上是假定实现遵循C++11标准...