2.2 KiB
2.2 KiB
Unity Reload卡死恢复记录
结论
2026-09-21 20:03,C:/projects/ft/Client的Editor已恢复到可操作的PreBoot编辑状态。恢复方式为仅重启卡住的Unity实例;没有修改生产代码、包依赖或清理Library/存档。没有证明卡死根因已经永久修复。
诊断及处理
- 旧进程36284通过进程命令行项目路径确认为C:/projects/ft/Client;窗口标题显示Reloading Domain (busy for 12:45)。5秒CPU增量0.078秒,UnitySkills未恢复。
- 上次PlayMode前场景未脏;先保存脱敏日志片段及操作记录,发送CloseMainWindow请求,返回true但进程仍未退出。
- 仅Stop-Process该PID,使用同一Unity2022.3.62f2c1重新打开同一项目,新PID64548。D:/ft/ft/Client的55776及其导入进程均未操作。
- 新进程脚本构建成功,经历Completing Domain后恢复主窗口。新日志单独输出到CodexOutput/upserver/UnityEditor-recovery.log,避免多个Editor共用默认日志造成混淆。
恢复后实测(20:03:26)
- UnitySkills重新登记正确项目与PID64548,health匹配后读取状态。
- editor_get_context:PreBoot / Assets/Scenes/PreBoot.unity;isDirty=false,isPlaying=false,isCompiling=false。
- debug_check_compilation:isCompiling=false,isUpdating=false。
- console_get_stats:8 Log、0 Warning、0 Error;错误日志查询为空。
保留边界
- 当前恢复的是Editor交互状态,运行态会话已随进程结束丢弃,不计游戏内注销或SignalR释放验收通过。
- 没有清空控制台来制造通过结果;没有删除Library、Temp、PlayerPrefs或云存档。
- 重启日志包含Unity Connect 404以及UnitySkills启动/恢复日志,但没有线程转储足以判定它们是卡死根因,不据此归因。
- Unity CLI Loop仍仅完成迁移方案评审,包未安装;后续可按《UnityCliLoop迁移核对与裁决.md》实施,再继续验收。
- 暂停在编辑状态,不自动重新Play或继续生产请求。
证据
UnityReload恢复记录.json、UnityReload重启记录.json、UnityReload诊断日志.txt、UnityEditor-recovery.log、自动验收-执行证据.jsonl末尾的20:03状态查询。诊断片段过滤凭证相关行;完整Editor日志仅本机保留,分享前需脱敏。