1

我正在尝试使用 TThreads 并行化模拟模型。每个模型对象都包括一个std::map<obj*, int>. 只要只有一个线程在运行,模型就可以正常运行。如果第二个线程启动,我会在第一个线程的模型映射中遇到访问冲突。

为了测试地图是否真的有问题,我将其替换为std::vector<pair<obj*, int> >. 这很好用,但速度要慢得多,因为每次尝试查找特定的obj*.

我知道不可能为地图保留内存,因此我不知道如何在没有访问冲突的情况下使用地图。

4

0 回答 0