【问题标题】:Does Doxygen cache parsed data? If not, can I make it do so?Doxygen 是否缓存解析的数据?如果没有,我可以这样做吗?
【发布时间】:2015-12-14 02:09:01
【问题描述】:

我第三次在大型项目上运行 Doxygen,但它似乎与第一次一样多。是否可以启用未更改的已解析文件的缓存?

【问题讨论】:

    标签: caching doxygen


    【解决方案1】:

    可以设置符号查找缓存的大小。 配置项是 LOOKUP_CACHE_SIZE。 我已经很长时间没有使用 doxygen 了,所以我向您推荐这里的文档: Doxygen Config

    编辑:你说你需要依赖图。可以减少图的深度吗?

    您可以尝试关闭 SEARCH_INCLUDES 选项。然后它只会引用您的文件而不是支持的 SDK 等。

    如果将大小增加到高值没有影响,也许您可​​以在一夜之间运行文档命令​​,或者将其推迟到另一台机器上?

    你可以试试标签文件,在这个问题中有解释:doxygen is slow

    我希望这会有所帮助。你的项目听起来比我过去使用 doxygen 的项目要大。

    【讨论】:

    • 即便如此,doxygen 似乎会重新生成所有文档文件,尽管源项目中几乎没有(或根本没有)变化。
    • 不知道怎么算。主项目中有 32MB 的源代码,然后还有一些库。
    • 关闭 SEARCH_INCLUDES 看看在没有库的情况下有多快。你总是可以在每个模块的基础上运行 Doxygen。如果模块中没有任何变化,你没有理由在那里运行它。
    • 更改缓存大小真的没有任何作用吗?设置为 9,您应该能够在缓存中存储多达 65,536 个符号。
    • doxygen 实际解析的时间段(即,它正在解析和预处理)以及它在做其他事情的时间段中的哪一部分?这将使您了解通过缓存解析结果可以获得多少收益。我的期望:不是那么多,所以这就是为什么我从来没有在这方面付出太多努力(这会增加很多的复杂性)。
    猜你喜欢
    • 2019-01-21
    • 1970-01-01
    • 1970-01-01
    • 2012-04-08
    • 1970-01-01
    • 2023-04-03
    • 1970-01-01
    • 2010-10-05
    • 1970-01-01
    相关资源
    最近更新 更多