interface Subscription

Message control linking a Publisher and Subscriber. Subscribers receive items only when requested, and may cancel at any time. The methods in this interface are intended to be invoked only by their Subscribers; usages in other contexts have undefined effects.

Summary

Public methods
abstract Unit

cancel()

Causes the Subscriber to (eventually) stop receiving messages.

abstract Unit

Adds the given number n of items to the current unfulfilled demand for this subscription.

Public methods

cancel

abstract fun cancel(): Unit

Causes the Subscriber to (eventually) stop receiving messages. Implementation is best-effort -- additional messages may be received after invoking this method. A cancelled subscription need not ever receive an onComplete or onError signal.

request

abstract fun request(n: Long): Unit

Adds the given number n of items to the current unfulfilled demand for this subscription. If n is less than or equal to zero, the Subscriber will receive an onError signal with an IllegalArgumentException argument. Otherwise, the Subscriber will receive up to n additional onNext invocations (or fewer if terminated).

Parameters
n Long: the increment of demand; a value of Long.MAX_VALUE may be considered as effectively unbounded

Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Last updated 2025-02-10 UTC.