一份契约
实现 IPlugin。载入、启用、停用与卸载由框架驱动;违反契约的包在运行之前就被拒绝。
一份契约
实现 IPlugin。载入、启用、停用与卸载由框架驱动;违反契约的包在运行之前就被拒绝。
隔离
每个插件一个可回收的程序集装载上下文。卸载经过验证,单个插件失败不会拖垮服务端。
一等 Provider
C# 与 F# 源码在装载时 AOT 为 IL;Provider 把 IL 装进 collectible ALC,核心驱动生命周期。预编译程序集由核心内置入口装载。RpcProvider 是例外一等 Provider:官方跨进程桥。
三个载体
同一份托管核心跑在 LeviLamina、Endstone(Windows 与 Linux)与自持态 Linux(BDS 1.21.3)上。
本文档也有English.
RpcProvider 是例外一等 Provider:官方、跨进程,给无法编译为 IL 的插件用。