栈追踪

(重定向自堆疊追踪

计算机科学领域,栈追踪(英語: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) (英语).