在C ++中异步填充std :: map的最佳方法是什么?

时间:2015-09-11 16:28:37

标签: c++11 asynchronous insert parallel-processing stdmap

我正在尝试找出用C ++ 11中的 std :: map 填充文本文件中的值的“最佳”方法。该问题的解决方案应仅适用于STL。

我的问题实际上有一个duplicate因为答案在std :: vector而不是std :: map中偏离了主题,我在meta this advice之后对它进行了重述所以希望得到一些实际问题的答案。到目前为止,我已经发现了两种方法/想法:

  1. 使用std :: fill : 据我所知,STL确实提供了(experimental) parallel版本的填充,但显然这些版本不适用于地图,因为std :: fill需要参数满足“ForwardIterator”要求。

  2. 的std ::异步/ STD:将来: 我实际上不确定这是不是一个好主意,或者甚至可以将期货用于地图。由于地图应该具有唯一的键集,并且在具有实际键值之前理论上可以添加多个未来。在这种情况下,std :: map会停止并发插入,直到将来确定未确定的键值吗?

  3. 是否存在异步加载地图(使用文本文件中的值)的做法?哪种解决方案被认为是安全的?

0 个答案:

没有答案
相关问题