如何解决Mac应用程序中的WaitForDebugger
我正在研究MAC应用程序。当我的程序由另一个应用程序启动时(即不在xcode内),我正在调试一个问题。
我可以在我的应用程序中添加代码,例如android中的“ WaitforDegger”,直到我在继续使用xcode调试器附加它之前,我的应用程序都将继续显示?
解决方法
没有内置的东西。您可以输入如下代码(C或Objective-C):
volatile int loop = 1;
while (loop)
sleep(1);
连接调试器并选择该线程的框架后,可以将loop
设置为0并继续:
expr loop=0
cont
您需要使用调试符号进行编译,以便调试器可以看到loop
符号,但是我认为您已经在这样做了,因为无论如何您都想进行调试。
调试菜单>通过PID或名称附加到进程...>编写要附加到其上的应用程序的名称。它将等待应用程序启动。
启动该应用。确保没有其他正在运行的应用实例。
另一种方法是在脚本中启动应用程序并将其发送到后台(<launch-command> &);
,立即通过pgrep
查找应用程序的PID并发送kill -STOP PID
信号。
将调试器附加到应用程序后,发送-CONT
信号。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。