有没有人知道我有什么要检查我的应用是否会冻结?我的意思是,我可以在iPad屏幕上看到该应用,但没有按钮响应。我点击按钮时尝试调试代码,但我还没有看到任何东西。我正在阅读有关仪器工具的内容;具体如何使用它们?
有谁能够帮我?我只需要解释如何使用这些工具。
除了暂停和跟踪堆栈跟踪,我认为另外要做的事情是,检查代码是否有任何循环导致应用程序冻结。
我最近遇到了类似的问题,但堆栈跟踪没有多大帮助,我发现我在layoutsubviews方法中调用reloadData()
时有一个永恒的循环,这导致冻结没有错误,没有乐器的帮助。
最佳答案是正确的。您可以使用“暂停”选项对其进行调试。阻止主线程的最常见方法是在您调度的同一线程上调用dispatch_sync
。有时你从dispatch_once
调用相同的代码。
我在我的项目中有类似的情况,原因是另一个开发人员在方法setNeedsLayout()
中添加了layoutSubviews()
,这使得无限循环并冻结应用程序。