- 引入'Spaces'作为C#的新架构原语,旨在统一高级托管语言与低级系统语言
- 通过允许系统以单体架构设计但以微服务形式部署,试图解决'单体架构vs微服务'的争论
- Spaces是拥有独立内存堆和线程的计算隔离单元,可消除竞态条件等并发问题
- Space间通过异步消息传递通信,使用'swait'和'srun'等新关键字进行抽象
- 支持通过.csproj文件细粒度配置Space,包括执行环境(托管/非托管)、编译方式(AOT/JIT)、运行时(线程组/隔离)、传输机制(共享内存/gRPC/命名管道)
- 引入'overspace'实现上下文多态,允许类型在不同Space中具有不同实现
- 提出严格的'Airlock'安全模型管理Space间通信,确保数据被复制但行为在目标Space中重构
- 通过将现有C#应用视为运行在隐式'默认Space'中来保证向后兼容
- 需要增强CLR和Roslyn编译器以支持Space生命周期管理、跨Space通信和非托管执行
- 设计为可选功能,并与IDE深度集成以提供上下文感知工具、调试和智能提示