当 Xcode 更新可用时无法启动模拟器

问题描述 投票:0回答:1

Xcode 模拟器问题:无法启动(当 Xcode 更新可用时)

描述

我在使用 Xcode 模拟器时遇到了一个持续存在的问题。每当有新的 Xcode 更新可用时,模拟器就会停止工作,并显示“无法启动模拟器”错误。

直到昨天为止都运行良好。 Xcode 15.2 在 12 小时前可用,之后模拟器就停止工作了。每次发生这种情况时,模拟器都无法工作,除非我更新了 Xcode。

详情

  • IDE: VS Code
  • Xcode 版本: 15.1(可以更新到 15.2)
  • macOS 版本:Ventura 13.5.2
  • iOS版本:17.2
  • 错误消息:“无法启动模拟器”

  • 采取的步骤:
    • 重新启动机器和模拟器
    • xcrun simctl shutdown all && xcrun simctl erase all
xcode macos ios-simulator simulator xcode15
1个回答
0
投票

这里不需要删除缓存。我预计这只会导致问题稍后再次出现。

我们已确定此问题的几个原因:

  1. dyld_sim 共享缓存无法映射到看门狗计时器内的进程,因为它是最近创建的,并且仍在被系统扫描。删除缓存将暂时解决此问题,但下次创建缓存时您会再次遇到该问题。等待约 2 分钟即可完成扫描。此外,如果您更新到 Xcode 15.3 Beta 2 或更高版本(上周发布),我们现在会避免尝试使用缓存,直到扫描完成。

  2. 从模拟器运行时磁盘映像读取时存在性能问题,这可能会导致启动触发看门狗计时器,特别是当 I/O 与生成 dyld 共享缓存的进程竞争时。此性能问题已在 macOS 14.4 Beta 及更高版本中得到解决。

因此,我建议面临此问题的用户更新到 macOS 14.4 Beta 或更高版本以及 Xcode 15.3 Beta 2 或更高版本。如果您仍然遇到此问题,请收集以下 tarball 并将其附加到位于 http://bugreport.apple.com 的报告中: xcrun simctl 诊断 须藤系统诊断

此外,如果可以的话,请通过以下方式启用调试日志记录: 默认写入 com.apple.CoreSimulator DebugLogging -bool YES

(您可以稍后使用默认删除 com.apple.CoreSimulator DebugLogging 删除调试日志记录)

请注意,在过去 6 个月中,我们收到了有关此问题的多份报告,但分类工作一直很困难,部分原因是我们尚未获得上述请求的日志记录,而当报告者开始回复请求时,他们脱离有问题的状态(因为它通常会在几分钟内自行解决)。请不要假设其他人正在提供数据。谢谢!

© www.soinside.com 2019 - 2024. All rights reserved.