5 lines
955 B
Markdown
5 lines
955 B
Markdown
- 所有对外暴露能力集中在单一 Python 主进程内:路由处理、WebSocket 租约状态、子进程管理均以模块级全局变量(如 `g_mutex`、`g_httpd`、`g_ecat_child`、`g_win`)共享,不使用类实例或配置对象。
|
|||
|
|
- 子进程生命周期统一通过 Windows Job Object + `--parent-pid` 参数管理,确保父进程退出后子进程被内核连带回收。
|
||
|
|
- 对外部资源访问(旧实例焦点、ECAT 端口探测、子进程启动)一律包裹 `try/except` 并用模块级锁串行化,避免因并发导致多实例或多线程竞争。
|
||
|
|
- 响应内容增强采用注入模式:将 JS/CSS 片段作为常量字符串定义并在发送 HTML 前通过 `<meta>` 或 `</body>` 标记插入,而非生成独立中间页。
|
||
|
|
- 跨组件通信约定保持一致:VBScript 通过 `pythonw.exe <脚本> [--window]` 命令行开关切换模式,HTTP 端点统一使用 JSON body + `application/json` content-type。
|