Java 9 在 java.util.concurrent.Flow 包下引入了响应式流,支持可互操作的发布-订阅 框架。它跨越异步边界处理异步数据流(将元素传递到另一个线程或线程池),并且接收方不会被迫缓冲任意数量的数据,因此不会发生缓冲区溢出。
Flow API包含四个相互关联的核心接口:发布者、订阅者、订阅和处理器。<strong>@FunctionalInterface </strong>public static interface <strong>Publisher<T></strong> { public void <strong>subscribe</strong>(<strong>Subscriber</strong><? super T><!--? super T--> subscriber) } public static interface <strong>Subscriber<T></strong> { public void <strong>onSubscribe</strong>(Subscription subscription); public void <strong>onNext</strong>(T item); public void <strong>onError</strong>(Throwable throwable); public void <strong>onComplete</strong>(); } public static interface <strong>Subscription </strong>{ public void <strong>request</strong>(long n); public void <strong>cancel</strong>(); } public static interface <strong>Processor<T, R> </strong>extends <strong>Subscriber<T></strong>, <strong>Publisher<R></strong> { }
这四个接口:Flow.Publisher、Flow.Processor、Flow.Subscriber 和 Flow 。与反应流规范相关的订阅。 发布者接口有subscribe()方法,订阅有cancel()和request() 方法,订阅者有 onSubscribe()、onNext()、onError() 和 >onComplete() 方法。 处理器接口实现Flow的所有方法。发布者和Flow.Subscriber 接口。
以上是Java 9中的Reactive Streams的核心接口是什么?的详细内容。更多信息请关注PHP中文网其他相关文章!