docs: define preferred debug port allocation
This commit is contained in:
@@ -31,7 +31,7 @@ UI/CLI 不直接操作 `exec.Cmd`、Win32 handle 或数据库。Application 层
|
||||
|
||||
`CREATED -> STARTING -> RUNNING -> STOPPING -> EXITED`;启动失败为 `FAILED`,无法确认的外部实例为 `UNKNOWN`。
|
||||
|
||||
- Start:规范化路径和参数,先检查 user data dir。未占用时从配置的起始端口选择可用 loopback 端口,注册 pending 后以受控的 `--remote-debugging-address=127.0.0.1` 和 `--remote-debugging-port` 启动,并直接请求该已知端口的 `/json/version` 验证实际端点。
|
||||
- Start:规范化路径和参数,先检查 user data dir。未占用时优先从实例持久化的首选端口分配;UI 在启动快照中提供其他 Chub 实例的逻辑预留/实际端口,启动器跳过这些端口后检查 loopback 可用性。注册 pending 后以受控的 `--remote-debugging-address=127.0.0.1` 和 `--remote-debugging-port` 启动,并直接请求该已知端口的 `/json/version` 验证实际端点;发生外部端口冲突且回退成功时才更新当前实例首选端口。
|
||||
- 外部关联:目录被占用时只检查该目录中的 `DevToolsActivePort` 和其 loopback `/json/version`;端点与浏览器类型均匹配才报告 `EXTERNAL_ASSOCIATED`,不注册、关闭、重启或强制终止该 PID。无法验证时保持 `UNKNOWN`/占用并拒绝启动。
|
||||
- Stop:校验身份,优先窗口关闭/浏览器协议,超时后经明确授权强制终止。
|
||||
- Force stop:使用实例 Job Object 或已校验进程树,不按名称全局终止。
|
||||
|
||||
Reference in New Issue
Block a user