e.J*_*mes 33 debugging cocoa exit
我正在寻找一种告诉我的Cocoa应用程序退出的好方法.请放心,这不会用于生产代码.我只是在寻找一种简单的方法来运行一个测试,然后在调试期间关闭应用程序.
我发现exit(0);将关闭应用程序,但它绕过了所有正常的应用程序退出程序,我想保留所有这些程序.
基本上我想让事情好像用户从菜单中拉出"退出",但我希望它在我完成测试后自动发生.
我的代码目前看起来像这样:
#if (SUPERFANCY_TESTING_MODE)
[self doSomething];
exit(0); // <-- I need something better to go here
#endif
Run Code Online (Sandbox Code Playgroud)
bbu*_*bum 84
您可以放心,您的应用程序至少会在某些时候被杀死.因此,防范出口等exit(0); 是必需的.
但是,NSApplication实现了该-terminate:方法.
[NSApp terminate: nil]; 应该做你想做的事.
我通常会建议通过-performSelector:afterDelay:延迟0.0来发布它,以强制它发生在下一次通过事件循环的顶部.
例:
[NSApp performSelector:@selector(terminate:) withObject:nil afterDelay:0.0];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17117 次 |
| 最近记录: |