gpt4 book ai didi

ios - 如何查找为什么 iOS 应用程序的主线程在 "semaphore_timedwait_trap"上被阻止?

转载 作者:行者123 更新时间:2023-12-01 20:07:22 28 4
gpt4 key购买 nike

所以,我还没有弄清楚这一点,因为当我暂停执行时...... Xcode 并没有真正显示发生了什么:

Xcode hang/freeze analysis

当我滚动很长的 UITableView 时会发生这种卡住。不断地在其可滚动区域的中心周围,因此它不断地重复使用单元格。我认为可能在那里发生的调度 block 可能没有保留一些东西,但我还不确定,因为使用标准调试器及其相当复杂的 View 没有显示任何数据。 (引用:https://stackoverflow.com/a/23501382/963901)

我将在这里尝试一些手动诊断,但是也许还有其他方法可以使用 Instruments 或其他方法来解决这个问题?

最佳答案

为了调查这类问题,我建议如下:

  • 禁用 Xcode 的调试导航 Pane 中的设置,该设置对您隐藏中间堆栈帧。它是 Pane 右下角显示堆栈跟踪的按钮之一。
  • 查看回溯跟踪中新显示的部分,了解信号量上阻塞了哪些代码。
  • 查看程序中的其他线程,看看哪些线程正在执行与步骤 2 中发现的代码相关的工作。
  • 关于ios - 如何查找为什么 iOS 应用程序的主线程在 "semaphore_timedwait_trap"上被阻止?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38516957/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com