从码农到工匠 / wechat· 从码农到工匠·发布时间:
图文深入 DeepSeek Harness 系列(五):Cordis 源码解读
深入DeepSeek Harness系列(五):Cordis源码解读
内容导读
作者用 cordis-demo 拆解 Cordis 的插件生命周期:依赖服务尚未注册时,插件先等待;服务注册后重新检查依赖并启动。定时器、事件监听等操作会保存撤销函数,卸载时按注册的逆序清理。服务扩展则分两层:声明合并让 TypeScript 识别新增属性,运行时注册让属性真正指向服务实例。这是源码机制讲解与可运行演示,生产级 Cordis 还有额外的作用域和异步重载等机制。
继续看关键要点
- 插件可以写成函数、对象或类:联合类型负责描述三种入口,运行时再判断形态并分发调用。
- 示例可通过 `node --experimental-strip-types index.ts` 运行,观察插件从等待、激活到卸载,以及定时器和事件监听器的逆序清理。
来源:从码农到工匠 / wechat · mp.weixin.qq.com