iOS 7应用程序无崩溃情况下卡顿

4

我正在开发一个针对iOS 7的应用程序,该应用程序在iPhone 5S上运行。但是,在正常使用时,该应用程序有时会冻结并且无法识别任何触摸交互,并且需要强制退出应用程序。我已经注意到它在执行许多不同的任务和不同的视图时出现了这个问题。我在调试时遇到了这个问题,RAM使用率约为65 Mb,我认为这非常好,CPU使用率处于个位数,调试器没有注册崩溃。在调试和尝试修复这个相当严重的问题方面,我该怎么做?


7
你是否正在使用多线程?我猜可能会出现死锁。如果 Xcode 作为调试器附加,可以通过暂停来捕获冻结。发布主线程和其他线程的堆栈跟踪。 - Léo Natan
我曾经因为一个微小的打字错误遇到了类似的问题 https://dev59.com/e3fZa4cB1Zd3GeqPU7bK - Kevin
我正在使用多线程,这是堆栈跟踪:http://i.imgur.com/Do2lrt5.png - harryisaac
3个回答

6

通常当应用程序冻结时,要么是CPU在进行一些重负载的操作,要么是出现了死锁。由于您提到CPU使用率很低,我的第一个猜测是出现了死锁。


2

感谢Leo Natan提出的建议,因为它是死锁。有一个特定的实例,我正在保存和从后台线程获取数据,并且有一个简单的解决方案,使我能够停止在后台线程上获取数据。


0
对我来说,这是一个无尽的while循环。通过暂停进程并检查堆栈跟踪找到了它。

Hit the pause button and check out the stack trace


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接