我有一个带有阻塞调用的Delphi 10多线程应用程序。当我退出时,它有时不会从 RAM 中卸载,并且 Delphi 调试器不会停止。
如何(工具、方法(检测我的应用程序正在等待哪个例程?
- 点击暂停按钮(运行,程序暂停( 显示"线程"窗口
- ("视图"、"调试"窗口、"线程"或"
Ctrl+Alt+V
"( - 依次双击每个线程并检查调用堆栈(查看、调试窗口、调用堆栈或
Ctrl+Alt+S
(
在调用堆栈 - 中查找例程,并评估在阅读调用堆栈顶部但在源文件中的代码时看到的证据
有时,在启用调试 DCU(项目、选项...、Delphi 编译器、编译、使用调试 .dcus(和禁用运行时包(项目、选项...、包、运行时包、与运行时包链接(的情况下运行上述步骤会更有信息性