我需要一種方法來在調試日誌中記錄函數堆棧跟蹤以幫助我診斷缺陷。問題是我需要使用C++在Windows和Linux上實現這個功能。用於日誌記錄的庫在運行時調用堆棧(Windows/Linux)
一個小小的研究後,我發現:
- 對於Windows實現,我可以使用StackWalk64 API函數和家人。
- 在Linux下,我發現libunwind聽起來不錯。
- 或者,我可以使用的glibc的backtrace
開始工作之前,我想要一些意見,如果這是正確的做法,並詢問是否有一個已經寫的多平臺庫,可以幫助。我懷疑我不是第一個需要這個的程序員。 :)
+1對於一個很好的問題很好的問道! –