25 lines
972 B
Markdown
25 lines
972 B
Markdown
# ShrinkEventBus Entities
|
|
|
|
`com.cneicy.shrink-eventbus-entities` 是可选 ECS/Burst 适配包。它不创建第二套事件总线,而是让 Burst Job 把 `unmanaged IShrinkEvent` 写入 `NativeQueue<T>`,随后由主线程或 ECS playback system 发布到指定的 `IShrinkEventBus`。
|
|
|
|
```csharp
|
|
using var queue = new ShrinkEcsEventQueue<MyEcsEvent>();
|
|
var writer = queue.Writer;
|
|
|
|
// Burst Job 中:writer.Post(in eventData);
|
|
// Playback 阶段:
|
|
queue.Playback(worldBus);
|
|
```
|
|
|
|
限制:Burst 端只负责事实事件生产,不能直接执行托管 handler、UniTask、取消或结果裁决。
|
|
|
|
## 可复用能力
|
|
|
|
<!-- shrink:capabilities -->
|
|
Capability: Burst Job 通过 NativeQueue 生产事件,主线程回放到 Bus
|
|
Aliases: ECS Burst Job 批量事件
|
|
Limits: Burst 不执行托管 handler、UniTask、取消或结果裁决
|
|
Extension: 队列 Writer 和 Playback
|
|
Evidence: [ShrinkEcsEventQueue](Runtime/ShrinkEcsEventQueue.cs)
|
|
<!-- /shrink:capabilities -->
|