Why is 'Simulate Background Fetch' leading to crash (libsystem_kernel.dylib`mach_msg_trap) since Xcode 8?

后端 未结 6 2192
深忆病人
深忆病人 2020-12-29 22:16

I\'m on macOS Sierra, Xcode 8, and get crashes whenever I try to Simulate Background Fetch on an actual iOS 10 device. This does NOT occur when using the simulator. This o

6条回答
  •  太阳男子
    2020-12-29 22:52

    As pointed out by others. it is not a crash, but an auto breakpoint triggered by system. As explained here by eskimo:

    So, why does it stop in mach_msg_trap? The goal is to give you a chance to set a breakpoint in your background fetch handling code, so Xcode forces your app to stop, just like it would if you hit the pause button (Debug > Pause). It stops in mach_msg_trap because that’s where your main thread is sitting when your app is suspended in the background. In short, when you do a Debug > Simulate Background Fetch and stop in mach_msg_trap:

    1. That’s expected behaviour
    2. It’s not a sign of any problem
    3. You can safely continue execution via Debug > Continue

    Personally, I see it more like a bug than a feature.

提交回复
热议问题