(19)Reactor Processors——响应式Spring的道法术器

本系列其他文章见:《响应式Spring的道法术器》
前情提要:响应式流 | Reactor3快速上手 | 深入理解响应式流规范

2.9 Processor

Processor既是一种特别的发布者(Publisher)又是一种订阅者(Subscriber)。 所以你能够订阅一个Processor,也可以调用它们提供的方法来手动插入数据到序列,或终止序列。

前面一直在聊响应式流的四个接口中的三个:PublisherSubscriberSubscription,唯独Processor迟迟没有提及。原因在于想用好它们不太容易,多数情况下,我们应该进行避免使用Processor,通常来说仅用于一些特殊场景。

2.9.1 使用 Sink 来线程安全地生成流

比起直接使用Processor,更好的方式是通过调用sink()来得到它的Sink。这个Sink是线程安全的,可以用于在应用程序中多线程并发地生成数据。例如,通过UnicastProcessor得到一个线程安全的 sink:

    UnicastProcessor<Integer> processor = UnicastProcessor.create();
    FluxSink<Integer> sink = processor.sink(overflowStrategy);<
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值