計算機科學領域,棧追蹤(英語: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) (英語).