【发布时间】:2016-10-31 13:59:59
【问题描述】:
有没有办法对使用 boost::archive::text_oarchive 序列化然后保存到文件的 std::map 进行部分反序列化? 例如,我们有一个大的序列化和保存的映射,其中键是整数,值是某种结构,现在我们需要将它分部分取回来……加载前 100 条记录,然后加载接下来的 100 条记录……等等。 是否有任何库、boost 类或解决方案可以做到这一点?
【问题讨论】:
-
为什么现在需要将它分批取回?如果是因为你不想让你的线程被捆绑,那么就开始另一个线程来完成它并在完成后发出信号
-
因为我们的序列化地图现在太大了,有时我们在尝试反序列化它并放入内存时会出现问题。
-
那么,东辉给了你答案——你需要找到一台可以反序列化它的机器,然后以与你的新模块化设计相匹配的新格式重新序列化它。
标签: c++ serialization boost