發布者是無限數量的排序元素的提供者,根據訂閱者的需求發布這些元素。 Publisher8742468051c85b06f0a0af9e3e506b5c介面負責發布T類型的元素,並提供訂閱者連接到它的subscribe()方法。
<strong>public interface Publisher<T> {
public void subscribe(Subscriber<? super T><!--? super T--> s);
}</strong>
Publisher 介面的規則:
- #由 發出訊號的onNext() 方法總數發佈者到訂閱者的元素總數必須永遠小於或等於訂閱者訂閱所請求的元素總數。
-
發布者可能會發出比請求的更少的onNext()方法,並透過呼叫onComplete()終止訂閱或onError() 方法。
-
onSubscribe()、onNext()、onError()訂閱者發出訊號的/strong> 和onComplete() 方法必須連續發出訊號。
- 如果發布者失敗,則必須向發出訊號>onError() 方法。
- 如果 Publisher 成功終止,則它必須發出 onComplete() 方法訊號。
- 如果 Publisher 發出訊號訂閱者上的 onError() 或 onComplete() 方法,則必須取消訂閱者的訂閱。
- 一旦終端機狀態發生如果訂閱被取消,則其訂閱者必須停止收到訊號。
-
Publisher.subscribe() 方法必須在向該訂閱者發送任何其他訊號之前呼叫 onSubscribe() 方法。 >訂閱者並正常返回,除非提供的訂閱者為空。在這種情況下,它必須向呼叫者拋出 NullPointerException。
-
Publisher.subscribe() 方法可以根據需要使用不同的值呼叫任意多次。每次訂閱者。
-
發布者可以支援多個訂閱者,並決定每個訂閱可以是單播還是多播。
#
以上是Java 9中Publisher介面的規則是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!