Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个线程(线程 A),它不断迭代地图,比如 MapA。
现在有另一个线程 (ThreadB) 将元素插入 MapA。
我不从 MapA 中删除元素
这个操作会不会有并发问题?
插入新项目时,线程安全/并发问题和无效迭代器之间存在区别。
STL 本质上不是线程安全的,所以除了从多个线程读取 STL 对象之外,请确保在执行其他任何操作时使用互斥锁。
但是,插入 astd::map不会使现有迭代器无效(请参阅插入到 STL 映射是否使其他现有迭代器无效?)
std::map