4

我的项目大约有 400 个单元,重新启动后编译需要 20-40 秒,然后再重新编译需要 1-5 秒,到目前为止一切都很好。

工作 3-6 小时后,编译需要1-3 分钟进行后续重新编译,这迫使我每次都重新启动。

D7的某处有泄漏吗?是Windows XP的问题吗?它变得非常令人沮丧...

有人遇到过这个问题吗?

Edit1 DelphiSpeedup 似乎没有改善问题,它仍然出现......

4

9 回答 9

6

旧版本的 Delphi 已知在 IDE 中编译的性能问题(与命令行相比),包括大量不必要的文件访问。

Delphi Speedup修复了 IDE 中的一些问题,包括对编译、链接和 Map 文件创建的改进。它可能对您的情况有所帮助。

于 2009-07-16T15:22:55.960 回答
2

我发现优化单位的使用子句有助于提高编译速度。在可能的情况下,在特定情况下删除对单元的引用,例如,unit1 在其接口部分使用 unit2,而 unit2 在其实现部分使用 unit1。

在http://www.peganza.com/products_icarus.htm有一个很好的免费使用条款分析器指出不需要的使用参考。

于 2009-12-12T03:25:25.130 回答
1

关闭编译器提示和消息会显着提高速度。

Project > Options Compiler Messages 取消选中“显示提示”和“显示消息”。

于 2009-12-11T23:14:17.643 回答
1

我也注意到了这一点,它似乎与关闭 Delphi 时获得的异常数量直接相关。我通常不需要重新启动计算机以恢复速度。

我的建议是进入环境选项并打开自动保存选项,这样您就可以重新启动 Delphi,而无需花费一百万年时间来找到您打开的内容。我必须这样做,因为我的调试器似乎只工作了大约一个小时。

于 2009-07-24T14:08:26.087 回答
1

我们最大的 Delphi 应用程序确实需要一段时间来编译,但我没有注意到后续重新编译需要更长的时间。

这是一个人的解决方案,但听起来像是在黑暗中拍摄: http ://groups.google.com/group/borland.public.delphi.ide.general/msg/9b8150342943e5d2

于 2009-07-16T15:19:04.813 回答
1

当 Delphi 编译开始变慢时,看看内存使用情况。一般来说, IDE 中的一些东西会泄漏(我个人最喜欢的罪魁祸首是 find-in-files 和 coderush 搜索),经过几个小时的工作,你最终可能会分配到足够的内存来真正开始减慢速度.

于 2009-07-16T18:18:25.670 回答
1

如果安装 DelphiSpeedup 后问题仍然存在,请尝试删除任何第三方 IDE 插件,看看是否有帮助。

您还可以检查是否有任何库路径不存在或位于映射/网络驱动器上。这些会减慢编译速度,但我不确定它们是否会导致编译速度随着时间的推移而变慢。

于 2009-07-24T10:51:38.673 回答
0

这个问题与那个问题类似。避免循环引用会有很大帮助。如上所述,DelphiSpeedUp 也有帮助。

于 2009-07-16T19:55:15.570 回答
0

哇,Delphi SpeedUp 相当可观,测试结果:

项目的完整构建:

之前:1分15秒

之后:45 秒

编译工程(源码不做改动,直接打开工程编译)

之前:1分钟

之后:20 秒

于 2009-07-23T05:32:45.783 回答