Files

955 B

  • 所有对外暴露能力集中在单一 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。