using System.Threading.Channels; namespace Admin.NET.Plugin.AiDOP.DataPlatform.Executors; /// /// 出站唤醒信号:入队后 Pulse,由 立即推送;轮询 Job 仅作兜底。 /// public sealed class MdpOutboxWakeSignal : ISingleton { private readonly Channel _channel = Channel.CreateBounded(new BoundedChannelOptions(1) { FullMode = BoundedChannelFullMode.DropOldest, SingleReader = true, SingleWriter = false }); public void Pulse() => _channel.Writer.TryWrite(0); public ChannelReader Reader => _channel.Reader; }