在linux上为了查看进程堆栈在给定的时间我们一般使用
pstack < pid
>
我想知道什么是在OSX的相同。
谢谢
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。