gpt4 book ai didi

c++ - DLL 比静态链接慢吗?

转载 作者:IT老高 更新时间:2023-10-28 21:40:36 25 4
gpt4 key购买 nike

我为游戏制作了一个 GUI 库。我的测试演示以 60 fps 运行。当我使用库的静态版本运行此演示时,它在任务管理器中占用 2-3% 的 cpu。当我使用 DLL 版本时,它使用了大约 13-15%。这正常吗?是这样,我该如何优化它?我已经要求它使用/O2 进行大部分函数内联。

最佳答案

在 DLL 有机会执行其功能一次之前,不要启动性能计时器。这使它有时间加载到内存中。然后启动计时器并检查性能。然后它应该基本上匹配静态库。

还要记住,DLL 的加载位置会极大地影响它的加载速度。 DLL 的默认基地址是 0x400000。如果您在该位置已经有其他 DLL,则加载过程必须执行昂贵的重新寻址步骤,这将更加浪费您的时间。

如果您有这样的冲突,只需在 Visual Studio 中选择不同的基地址即可。

关于c++ - DLL 比静态链接慢吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4149668/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com