" _nano_vet_and_size_of_live"仅在iOS 10

时间:2016-11-07 06:35:43

标签: ios objective-c ios10

我使用KSCrash来收集应用的崩溃信息。自iOS 10发布以来,我在iOS 10设备中看到了巨大的崩溃浪潮。这些崩溃有很多相似之处。

  1. 所有这些都以信号中止结束。
  2. 所有这些都来自iOS 10设备。
  3. 所有人都有" _nano_vet_and_size_of_live(在libsystem_malloc.dylib中)"在崩溃的线程的回溯中。
  4. 他们中的大多数都有一个" Freeing Unallocated Pointer"字符串在崩溃线程的一个寄存器中。 (当崩溃发生时,KSCrash将尝试读取并保存寄存器信息)
  5. 这似乎是很多地方可能发生的崩溃。一些回溯中有很多CoreText符号。其他似乎与CFPropertyList相关,或与ImageIO相关,甚至与sqlite相关。

    我怀疑它是iOS 10的错误。但我不确定。

1 个答案:

答案 0 :(得分:0)

许多源自libsystem_malloc.dylib的崩溃是由于系统内存问题引起的。我见过与此有关的stacktraces,但没有真正的原因指示。从我的一台旧iOS 10.x设备上获取了sysdaignose之后,我意识到每次发生这种情况时,该设备都几乎没有可用的RAM。我发现重新启动后这种情况较少发生。虽然不是理想的答案,但通常发生在系统由于RAM有限而无法分配任何额外内存或运行时发生灾难性问题(需要重新启动或重新启动设备)(请考虑内核无法打开新的mach端口)时。