【发布时间】:2016-10-11 19:00:26
【问题描述】:
我正在尝试在 OS X Yosemite 上计算我的 Go 程序中的系统调用。我试过使用dtruss 和dtrace,但两者都会导致我的程序崩溃并出现以下错误,然后是堆栈跟踪:
fatal error: runtime: bsdthread_register error
我使用的两个命令是:
sudo dtruss "./my_program my_arg"sudo dtrace -c "powerset 2" -n 'syscall:::entry { @num[probefunc] = count(); }'
我尝试过的事情
我的 Google-foo 的主要收获是取消设置 DYLD_INSERT_LIBRARIES,我已经做了很多次都无济于事。
./my_program 是我使用go install 创建的二进制文件。我编写了一个等效的 C 程序,上面的两个命令都可以正常工作。
【问题讨论】:
-
@JimB 谢谢,这解决了我的问题。
标签: c go system-calls