Java 9 führt reaktive Flüsse unter dem Paket java.util.concurrent.Flow ein und unterstützt das interoperable Publish-Subscribe-Framework. Es verarbeitet asynchrone Datenströme über asynchrone Grenzen hinweg (Übergabe von Elementen an einen anderen Thread oder Thread-Pool) und der Empfänger ist nicht gezwungen, Datenmengen zu puffern, sodass es nicht zu Pufferüberläufen kommen kann.
Flow API besteht aus vier miteinander verbundenen Kernschnittstellen: Publisher, Subscriber, Subscribe und Processor.<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> { }
Diese vier Schnittstellen: Flow.Publisher, Flow.Processor, Flow.Subscriber und Flow. Abonnements im Zusammenhang mit reaktiven Streams-Spezifikationen. Die Schnittstelle „publisher“ verfügt über die Methode „subscribe()“, die Schnittstelle „subscription“ über die Methoden „cancel()“ und „request()“, die Schnittstelle „subscriber“ über die Methoden „onSubscribe()“, „onNext()“. , onError( ) und >onComplete() Methoden. Die ProzessorSchnittstelle implementiert alle Methoden von Flow. Schnittstellen für Publisher und Flow.Subscriber .
Das obige ist der detaillierte Inhalt vonWas ist die Kernschnittstelle von Reactive Streams in Java 9?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!