在linux上,为了在给定时间查看进程堆栈,我们通常使用
pstack< pid
>
我想知道osx中的相同内容是什么。
感谢
答案 0 :(得分:7)
sudo /usr/libexec/stackshot -i -u -p <pid>
这会将相关进程的所有线程的堆栈跟踪追加到文件/Library/Logs/stackshot-syms.log。考虑在调用stackshot之前删除文件stackshot-syms.log。请参阅:stackshot(1)
注意:OS X 10.11 EL Capitan不再包含stackshot。 请改用lldb调试器:
echo "thread backtrace all" | lldb -p <pid>
lldb是命令行开发人员工具的一部分。如果您的计算机上没有lldb,弹出窗口将有助于安装XCode。