当我在ios模拟器中尝试我的应用程序时,我发现当我从多任务栏中删除它并重新运行时,它会产生SIGKILL信号。(我通过停止应用程序、运行另一个应用程序,然后从多任务栏中删除第一个应用程序并重新运行它来实现这一点。)
我认为这可能与我最新的实验——添加核心数据有关,但在尝试简化条件后,看起来它在我测试的每个应用程序中都发生。
我的代码在我的注释所指示的位置停在调试器中:
#import <UIKit/UIKit.h>
int main(int argc, char *argv[])
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
int retVal = UIApplicationMain(argc, argv, nil, nil); //<- STOPS with SIGKILL here
[pool release];
return retVal;
}
我发现它似乎像一个断点一样停止了。我点击“继续”按钮,它就会恢复,好像什么都没发生过。我在标记的行上设置了一个真正的断点,它就会在那里停止。点击“继续”可以让程序恢复,而不会发生SIGKILL信号。
我用Core Data的基本模板程序进行了尝试,没有进行任何修改,结果出现了信号。我尝试了其他不使用Core Data的程序,也出现了信号。当程序已经加载但未被调试时,程序的表现是正常的,即使在调试时出现了问题。
当然,SIGKILL不会给出任何有用的错误信息。
有人知道发生了什么吗?这似乎不是一个真正的问题,但我想确保我理解了它。
我正在使用XCODE4。