我有一个 std::unordered_map 的实例,用作某种数据库。(它基本上只是一个常规的哈希图)。
我有 4 个线程从网络中检索长字符串(我使用的是 c++11 std::threads),并且在每个线程中,我标记了它们收到的字符串。标记化本身也使用新的 Microsoft AMP 库进行并行化(因此标记化过程由 GPU 线程完成)。
我希望 4 个“主”线程中的每一个都将标记作为键添加到哈希图中,因为 GPU 线程完成了对字符串的标记(然后重复该过程)。
我将如何同步所有这些,以便我可以从每个线程安全地将新密钥添加到我的数据库中?