这是场景:
1)使用unordered_map<int, vector<MyClass*>*>
假设我添加键 1、2、... 8
2)所有键在程序初始化时都用向量设置,没有更多的添加或删除
3)我有 8 个线程,其中 thread1 访问键 [1] , thread2 访问 key[2], ... thread8 访问 key[8] (即线程号只能访问该密钥号而不能访问其他密钥)
有时我将值向量 * 重新分配给另一个堆分配的集合。(即thread1执行key[1] = new vector<MyClass*>
)
我相信这将是线程安全的,对吗?如果没有,我想我会使用 concurrent_unordered_map。
谢谢。