0

我计划为我们的应用程序使用 boost 属性树http://www.boost.org/doc/libs/1_41_0/doc/html/property_tree.html。现在我想知道,每次我们调用这个方法 pt.get("debug.level", 0); 它是再次读取整个文件还是从内部缓存中提供值。这个库有性能评估结果吗?它是否读取内存中的整个文件并从那里提供数据?任何人都可以分享他们使用这个库的经验吗?

4

1 回答 1

2

图书馆运作良好。您将文件加载到内存中,对属性树进行操作(查询、更新等),然后在完成后再次将其写出。

boost::property_tree我们已经将它用于一些足够大的 JSON 文件,当使用with将它们加载到 32 位机器上时会耗尽地址空间std::stringstd::string用缓存字符串类替换工作正常。

对于您实际上只是查看配置文件的大多数应用程序来说,它会很好。

于 2012-08-12T05:13:24.270 回答