pstack 跟蹤棧空間 pstack是一個腳本工具,可顯示每個進程的棧跟蹤。pstack 命令必須由相應進程的屬主或 root 運行。其核心實現就是使用了gdb以及thread apply all bt命令;
語法:
$pstack <program-pid>
示例:
$ pstack 4551
Thread 7 (Thread 1084229984 (LWP 4552)):
#0 0x000000302afc63dc in epoll_wait () from /lib64/tls/libc.so.6
#1 0x00000000006f0730 in ub::EPollEx::poll ()
#2 0x00000000006f172a in ub::NetReactor::callback ()
#3 0x00000000006fbbbb in ub::UBTask::CALLBACK ()
#4 0x000000302b80610a in start_thread () from /lib64/tls/libpthread.so.0
#5 0x000000302afc6003 in clone () from /lib64/tls/libc.so.6
#6 0x0000000000000000 in ?? ()