我的应用程序冻结,但没有出现错误

任何机构知道我必须检查我的应用程序是否冻结? 我的意思是,我可以看到iPad屏幕上的应用程序,但没有button响应。 当我点击button时,我已经尝试debugging代码,但是我还没有看到任何东西。 我正在阅读有关仪器工具; 具体如何使用它们?

有谁能够帮助我? 我只需要解释一下如何使用这些工具。

这听起来像你已经阻止主线程莫名其妙。 要debugging,在debugging器中运行应用程序,当应用程序冻结时,点击Xcode底部日志区域上方的暂停button。 然后在左边,你将能够看到每个线程正在做什么,你可以看到它卡住的地方。

暂停按钮

可能是主线程上的长循环或同步死锁。

最佳答案是正确的。 您可以使用“暂停”选项进行debugging。 阻塞主线程的最常用方法是在dispatch_sync的同一个线程上调用dispatch_sync。 有时你从dispatch_once调用相同的代码。

除了暂停和跟踪堆栈跟踪之外,我认为作为一个额外的事情,是检查代码是否有任何循环导致应用程序冻结。

我最近碰到类似的问题,但堆栈跟踪没有什么帮助,我发现在layoutsubviews方法中调用reloadData()时,我有一个永恒的循环,并导致冻结没有错误,没有仪器的帮助。