一. 前戏
断言
二. 入门
单步跟踪
断点及其属性
BreakIf
附加进程
远程调试
查看变量值
命令行参数
日志输出
三. 进阶
函数的调用栈
Call Stack窗口
每个线程有一个独立的栈,Delphi中,栈大小默认最大1M,初始分配16kb。修改方法:
栈是一种先进后出的结构,每次函数调用,都会入栈一堆数据,然后跳转到新的函数去执行,在函数执行完之后,会出栈一堆数据。栈的大小限制了程序能够调用函数的数量,如果一个函数被递归调用的次数过多,就会出现栈溢出——“stack overflow at 0xXXXXXXXX”。
线程状态
模块及模块函数入口地址列表
CPU断点
事件日志
内存分配挂钩
四. 高级
查找内存泄露
工具 EurekaLog
排查内存问题,选中Features > Memory problems > RAW stack tracing