Package org.reactivestreams
Interface Subscription
public interface Subscription
A
Subscription
represents a one-to-one lifecycle of a Subscriber
subscribing to a Publisher
.
It can only be used once by a single Subscriber
.
It is used to both signal desire for data and cancel demand (and allow resource cleanup).
-
Method Summary
-
Method Details
-
request
void request(long n) No events will be sent by aPublisher
until demand is signaled via this method.It can be called however often and whenever needed—but if the outstanding cumulative demand ever becomes Long.MAX_VALUE or more, it may be treated by the
Publisher
as "effectively unbounded".Whatever has been requested can be sent by the
Publisher
so only signal demand for what can be safely handled.A
Publisher
can send less than is requested if the stream ends but then must emit eitherSubscriber.onError(Throwable)
orSubscriber.onComplete()
.- Parameters:
n
- the strictly positive number of elements to requests to the upstreamPublisher
-
cancel
void cancel()Request thePublisher
to stop sending data and clean up resources.Data may still be sent to meet previously signalled demand after calling cancel.
-