Publisher は、並べ替えられた要素を無制限に提供するプロバイダーであり、サブスクライバーからの要求に応じてこれらの要素を公開します。 Publisher インターフェイスは、T 型の要素を公開し、それに接続するための subscribe() メソッドをサブスクライバーに提供する役割を果たします。
<strong>public interface Publisher<T> {
public void subscribe(Subscriber<? super T><!--? super T--> s);
}</strong>
ログイン後にコピー
パブリッシャー インターフェイスのルール:
-
onNext() パブリッシャーによって通知されたメソッドの総数 subscriber に到着する要素の合計数は、常に、subscribersubscription によって要求された要素の合計数以下である必要があります。
-
パブリッシャー は、要求された数よりも少ない onNext() メソッドを発行し、onComplete() を呼び出すことで を終了する可能性があります。 # または onError() メソッド。
- onSubscribe()、onNext()、onError()および #subscribers ##onComplete を通知します() メソッドは継続的に信号を送信する必要があります。 パブリッシャーが失敗した場合は、
>onError()- メソッドを通知する必要があります。 パブリッシャーが正常に終了した場合、
onComplete()- メソッドに通知する必要があります。 パブリッシャーが
subscriber- で onError() または onComplete() メソッドを通知した場合、サブスクライバーはサブスクライブを解除する必要があります。 サブスクリプションがキャンセルされて終了状態が発生すると、サブスクライバーは信号の受信を停止する必要があります。
- Publisher.subscribe()
- メソッドは、このサブスクライバに他のシグナルを送信する前に、onSubscribe() メソッドを呼び出す必要があります。 >Subscribers と指定され、指定された Subscriber が空でない限り、通常どおりに戻ります。この場合、呼び出し元に NullPointerException をスローする必要があります。
Publisher.subscribe()- このメソッドは、さまざまな値を使用して必要に応じて何度でも呼び出すことができます。加入者ごとに。
パブリッシャー- は複数のサブスクライバをサポートし、各サブスクリプションが ユニキャストであるか マルチキャストであるかを決定できます。
以上がJava 9 の Publisher インターフェイスのルールは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。