应用程序崩溃只(LLDB)?(App crashes only with (lldb)?)

2019-10-17 04:24发布

我有一个的Cocos2D和一些UIKit的。我最近一直在实施一些新的功能混合的应用程序,所以也许内存管理错误或东西越来越过度释放,但每当我点击home键退出应用程序,控制台只是崩溃仅与该消息(LLDB)。 即使我打开NSZombiesEnabled什么不同的反应。

唯一我的应用点是一条线,看起来像这样:

libGPUSupportMercury.dylib`gpus_ReturnNotPermittedKillClient:
0x38101094:  trap   
0x38101096:  nop  

我不知道这意味着什么,但我很想此问题得到解决。 有没有人有这为什么发生任何想法?

提前致谢!

编辑 :我认为这种情况的原因是因为我呼吁暂停上的Cocos2D的CCDirector后我做unscheduleAllSelectors和stopAnimation。 如果我不叫那些2,那么就没有LLDB崩溃。

Answer 1:

您的应用被杀,因为它违反了异常。 几乎可以肯定,你正在使用的GPU后,您的应用程序已被转移到后台,这是严格非法的,会导致系统的终止信号发送到您的应用程序。

当一个应用程序在调试器正在运行,它是由一个外部信号(如终止信号)被杀而不是一些调试器可以处理(如马赫除外),调试器只是给你任何信息,它知道和陷阱程序的入口点(这通常会导致调试器看起来像它停在最后一行main()

重要的是要注意,但是,那是你的应用程序进入后台之前,你必须结束任何和所有GPU的活动。 一个好地方,做到这一点是在通知处理程序UIApplicationWillResignActiveNotification或类似名称的申请委托回调。



Answer 2:

这可能意味着你还在试图呈现在OpenGL(通过cocos2d的)东西,当应用程序在后台这是不允许的。



Answer 3:

原来,这是我与Cocos2D中关系问题的实际解决: http://www.cocos2d-iphone.org/forum/topic/7326



文章来源: App crashes only with (lldb)?