调试一个多线程程序,主要是进行套接字操作,我试图限制一个 strace
到 recvfrom
和 sendto
.如果我只是指定 -f
和 -p <pid>
参数,我看到 recvfrom
和 sendto
syscalls。
然而,当我使用额外的 -e recvfrom -e sendto
我只看到 sendto
syscalls.我使用的是strace 4.10 (SLES12 SP4的strace-4.10-3.1.x86_64).这可能是一个已知的bug吗?语法说 [-eexpr]...
所以,多个 -e
s应该没问题。
只有最后一个 -e
赢,所以你必须指定 -e recvfrom,sendto
以跟踪两个系统调用。