REFERENCE

模块参考

章节负责带你完成改动;这里负责把边界说完整。遇到悬空引用、取消传播、跨线程或关闭顺序问题时,从对应模块开始查。

总体所有权

Process
├── KJ AsyncIoContext
├── Runtime
│   ├── V8 Platform / Isolate / Context
│   ├── CppHeap
│   ├── TimerQueue
│   └── request/background TaskSet
├── HttpServer → RouterService
├── ChatHub → WebSocketSession...
├── StorageExecutor → RocksDB
└── TraceWriter

最重要的不变量:只有 Runtime 所在线程可以进入 V8;KJ continuation 可以携带任务状态,不能携带失效的 v8::Local;后台线程只处理拥有所有权的普通 C++ 数据。