Java 9 introduit les flux réactifs sous le package java.util.concurrent.Flow, prenant en charge le framework interopérable publish-subscribe. Il gère les flux de données asynchrones au-delà des limites asynchrones (en passant des éléments à un autre thread ou pool de threads), et le récepteur n'est pas obligé de mettre en mémoire tampon une quantité de données, de sorte que les dépassements de tampon ne peuvent pas se produire.
Flow API se compose de quatre interfaces principales interdépendantes : Publisher, Subscriber, Subscribe et 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> { }
Ces quatre interfaces : Flow.Publisher, Flow.Processor, Flow.Subscriber et Flow. Abonnements liés aux spécifications des flux réactifs. L'interface publisher a la méthode subscribe(), la subscription a les méthodes cancel() et request(), la subscriber a les onSubscribe(), onNext() , onError() et >onComplete(). L'interface processorimplémente toutes les méthodes de Flow. Interfaces Éditeur et Flow.Subscriber .
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!