在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。
关于linux - 在OSX 10.9上Pstack一个进程,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24523118/