在Linux中,我可以使用echo t > /proc/sysrq-trigger
來轉儲系統中所有線程的內核調用堆棧。如何在Mac OS X中打印內核調用堆棧
Mac OS X中是否有任何方法用於相同目的?或任何方法來轉儲一個進程的內核堆棧?
在Linux中,我可以使用echo t > /proc/sysrq-trigger
來轉儲系統中所有線程的內核調用堆棧。如何在Mac OS X中打印內核調用堆棧
Mac OS X中是否有任何方法用於相同目的?或任何方法來轉儲一個進程的內核堆棧?
答案可能是dtrace。我知道Instruments.app(或iprofiler)可以執行基於探測的分析,因此它需要定期的堆棧跟蹤。 (用戶或內核;您的選擇)據我所知,這些都是基於dtrace的,儘管我不能很好地告訴你一種採用一次性跟蹤的方法。
嗯......我沒有在Mac OS X上進行代碼測試。但名稱爲'stackshot'的工具可以幫助你做到這一點。嘗試谷歌它獲得使用。 :-)