我在我的应用程序中遇到了竞争条件,每当我暂停调试时,除了 1 个线程之外的所有或所有线程都会卡在 syscall_thread_switch 上。它在模拟器上的再现频率更高,在 iPad Air 上也一样。总是有至少 2 个线程卡在 CocoaLumberjack 的 queueLogMessage 中: -- 见截图。
我以前在 8.1 和 8.2 上从未见过这种情况,但我在 8.3 上经常遇到这种情况。我并不是说这是 8.3 的错误 :)
这是我以前从未调试过的复杂程度,所以我不确定该怎么做。我希望我提供了足够的信息,如果您需要更多信息,请告诉我(如果不清楚,请具体说明如何获取信息)。你能帮我调试一下吗?!数以百万计的感谢。