Package rx.internal.util
Class ScalarSynchronousObservable.WeakSingleProducer<T>
java.lang.Object
rx.internal.util.ScalarSynchronousObservable.WeakSingleProducer<T>
- Type Parameters:
T
- the value type
- All Implemented Interfaces:
Producer
- Enclosing class:
ScalarSynchronousObservable<T>
static final class ScalarSynchronousObservable.WeakSingleProducer<T>
extends Object
implements Producer
This is the weak version of SingleProducer that uses plain fields
to avoid reentrancy and as such is not threadsafe for concurrent
request() calls.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
request
(long n) Request a certain maximum number of items from this Producer.
-
Field Details
-
actual
-
value
-
once
boolean once
-
-
Constructor Details
-
WeakSingleProducer
-
-
Method Details
-
request
public void request(long n) Description copied from interface:Producer
Request a certain maximum number of items from this Producer. This is a way of requesting backpressure. To disable backpressure, passLong.MAX_VALUE
to this method.Requests are additive but if a sequence of requests totals more than
Long.MAX_VALUE
thenLong.MAX_VALUE
requests will be actioned and the extras may be ignored. Arriving atLong.MAX_VALUE
by addition of requests cannot be assumed to disable backpressure. For example, the code below may result inLong.MAX_VALUE
requests being actioned only.request(100); request(Long.MAX_VALUE-1);
-