如何在调整主窗体大小时找出长时间延迟的来源?

ros*_*mcm 5 forms delphi onresize freeze delphi-2006

我有一个D2006应用程序,其中包含选项卡上的页面控件和各种网格等.当我调整主窗体的大小时(它会在与某些东西对齐的表格上涟漪并调整大小),我会遇到很长的延迟,比如几秒钟.应用程序冻结,未调用空闲处理程序,并且运行的线程也会暂停.

我尝试在IDE中暂停执行,而这种情况发生在试图破坏执行时,它处于麻烦的代码中,但IDE没有接收消息.

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

Mas*_*ler 5

如果你想知道实际占用你的时间,试试一个分析器. 采样分析器可以非常轻松地回答您的问题,特别是如果您能够找到引起问题的代码部分的开头和结尾并OutputDebugString在其周围插入语句以缩小分析范围.