计算机科学领域,栈追踪(英语:stack trace)是对程序运行过程中的某个时间点上活跃栈帧信息的描述。栈追踪也称堆栈回溯[1](英语:stack traceback[2]stack backtrace[3])。

程序员通常在交互式调试或者事发后调试中使用栈追踪。最终用户则可能在错误信息中看到栈追踪,并且可以选择将其反馈给程序员。

语言支持

编辑

包括JavaC#在内的很多编程语言都内置相关支持,可以通过系统调用获取当前的栈追踪。C++没有内置此类功能,不过C++用户可以通过第三方库获取栈追踪。JavaScript的异常中有stack属性,包含了抛出处的栈信息。

另见

编辑

参考资料

编辑
  1. ^ stack traceback - 堆疊回溯. 国家教育研究院双语词汇、学术名词暨辞书信息网. [2018-07-03]. [永久失效链接]
  2. ^ traceback — Print or retrieve a stack traceback. python.org. [2018-07-03]. (原始内容存档于2021-03-11) (英语). 
  3. ^ libc manual: backtraces. gnu.org. [2018-07-03]. (原始内容存档于2021-03-11) (英语).