delphi - 我如何找出调整主窗体大小时长时间延迟的根源?

标签 delphi forms freeze delphi-2006 onresize

我有一个 D2006 应用程序,其中包含页面控件和选项卡上的各种网格等。当我调整主窗体的大小(它会影响并调整窗体上与某些内容对齐的所有内容的大小)时,我会遇到很长的延迟,例如几秒钟。应用程序卡住,未调用空闲处理程序,并且正在运行的线程似乎也挂起。

当发生这种情况时,我尝试在 IDE 中暂停执行,试图在遇到麻烦的代码时中断执行,但 IDE 不接收消息。

显然,我不希望有人指出我的一些错误代码,但我正在寻找可能对我有帮助的调试方法。我在整个应用程序中有大量的执行计时代码,并且任何数据中都没有显示出长时间的延迟。例如,主窗体 OnResize 处理程序的执行时间是最少的。

最佳答案

如果您想了解到底是什么占用了您的时间,请尝试使用分析器。 Sampling Profiler可以很容易地回答您的问题,特别是如果您能够找到导致问题的代码部分的开头和结尾,并在其周围插入 OutputDebugString 语句以缩小分析范围。

关于delphi - 我如何找出调整主窗体大小时长时间延迟的根源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5172433/

相关文章:

powershell - 从Jenkins PowerShell构建步骤中调用的PowerShell脚本无限期挂起

delphi - 如何在Delphi中最好地创建HMI显示面板(用户定制界面)

delphi - 不兼容的类型 : 'PAnsiChar' and 'PWideChar'

delphi - 什么是代码页 0?

javascript - 如何从 Typescript 上的 FormGroup 中的动态重复表单中获取值?

javascript - 如何调用一个或两个或两个复选框和文本输入

android - Delphi 10.3.1 - Android 服务在 System.InitUnits 上挂起

delphi - 'cdecl = nil'(位于函数声明之后)是什么意思?

javascript - 提交时不会触发主干事件

ios - 更改不同类的 CCSpeed Action ?