在Mac OS X上调试和查杀应用程序?

Eig*_*ght 5 c++ crash debugging macos

嘿所有,我正在调试mac os 10.5上的C++应用程序.偶尔,我会做一些不好的事情并导致段错或非法操作.这导致应用程序挂了一段时间,最终系统对话框通知我崩溃."挂起"和对话之间的等待时间很长; 几分钟.如果我尝试强制退出应用程序或kill -9从命令行退出没有任何反应.如果我从调试器(gdb)启动应用程序,在崩溃时我返回到gdb提示符并可以干净地退出该进程.虽然gdb的加载速度很慢,但这并不理想.

无论如何,你们可以推荐一些东西吗?有没有办法在OS X中禁用崩溃报告机制?

谢谢.

更新1:这是从XCode执行中遗留下来的僵尸.显然xcode也无法正常停止.

  1 eightieight@eightieights-MacBook-Pro:~$ ps auxw|grep -i Reader
  2 eightieight   28639   0.0  0.0   599828    504 s004  R+    2:54pm   0:00.00 grep -i reader
  3 eightieight   28288   0.0  1.1  1049324  45032   ??  UEs   2:46pm   0:00.89 /Users/eightieight/workspace/spark/spark/reader/browser/build/Debug/Reader.app/Contents/MacOS/Reader
  4 eightieight   28271   0.0  1.1  1049324  45036   ??  UEs   2:45pm   0:00.89 /Users/eightieight/workspace/spark/spark/reader/browser/build/Debug/Reader.app/Contents/MacOS/Reader
  5 eightieight   28146   0.0  1.1  1049324  44996   ??  UEs   2:39pm   0:00.90 /Users/eightieight/workspace/spark/spark/reader/browser/build/Debug/Reader.app/Contents/MacOS/Reader
  6 eightieight   27421   0.0  1.1  1049328  45024   ??  UEs   2:29pm   0:00.88 /Users/eightieight/workspace/spark/spark/reader/browser/build/Debug/Reader.app/Contents/MacOS/Reader
  7 eightieight   27398   0.0  1.1  1049324  45044   ??  UEs   2:28pm   0:00.90 /Users/eightieight/workspace/spark/spark/reader/browser/build/Debug/Reader.app/Contents/MacOS/Reader

mar*_*ton 1

XCode附带了CrashReporterPrefs 应用程序(使用 Spotlight 搜索它;应该在 中/Developer/Applications/Utilities)。这可以设置为服务器模式来禁用应用程序“意外退出”对话框。

这是另一个建议

sudo chmod 000 /System/Library/CoreServices/Problem\ Reporter.app
Run Code Online (Sandbox Code Playgroud)

要重新启用,请执行以下操作:

sudo chmod 755 /System/Library/CoreServices/Problem\ Reporter.app
Run Code Online (Sandbox Code Playgroud)

应用程序可能正在转储大型核心文件 - 不过您可能会注意到对可用磁盘空间的影响。您可以使用关闭核心转储

sudo sysctl -w kern.coredump=0
Run Code Online (Sandbox Code Playgroud)

通过设置重新激活=1