Delphi程序调试

Delphi程序调试

一. 前戏断言二. 入门单步跟踪断点及其属性BreakIf附加进程远程调试查看变量值命令行参数日志输出三. 进阶函数的调用栈线程状态模块及模块函数入口地址列表CPU断点事件日志内存分配挂钩四. 高级查找内存泄露死锁的查找死循环查找调试 DLL 程序

一. 前戏

断言

二. 入门

单步跟踪

断点及其属性

BreakIf

附加进程

远程调试

查看变量值

命令行参数

日志输出

三. 进阶

函数的调用栈

Call Stack窗口

每个线程有一个独立的栈,Delphi中,栈大小默认最大1M,初始分配16kb。修改方法:

栈是一种先进后出的结构,每次函数调用,都会入栈一堆数据,然后跳转到新的函数去执行,在函数执行完之后,会出栈一堆数据。栈的大小限制了程序能够调用函数的数量,如果一个函数被递归调用的次数过多,就会出现栈溢出——“stack overflow at 0xXXXXXXXX”。

线程状态

模块及模块函数入口地址列表

CPU断点

事件日志

内存分配挂钩

四. 高级

查找内存泄露

工具 EurekaLog

排查内存问题,选中Features > Memory problems > RAW stack tracing

死锁的查找

死循环查找

调试 DLL 程序

相关推荐

啼怎么读
36578130

啼怎么读

📅 11-16 👁️ 3675
微博评论完的信息怎么查看记录?信息记录能保存多久?2025-03-02 17:35:363989浏览
爱情公寓5在哪个app上能看
beat365倍率

爱情公寓5在哪个app上能看

📅 08-15 👁️ 8062