Package rx.internal.util
Class ScalarSynchronousObservable.ScalarAsyncProducer<T>
- java.lang.Object
-
- java.util.concurrent.atomic.AtomicBoolean
-
- rx.internal.util.ScalarSynchronousObservable.ScalarAsyncProducer<T>
-
- Type Parameters:
T- the value type
- Enclosing class:
- ScalarSynchronousObservable<T>
static final class ScalarSynchronousObservable.ScalarAsyncProducer<T> extends java.util.concurrent.atomic.AtomicBoolean implements Producer, Action0
Represents a producer which schedules the emission of a scalar value on the first positive request via the given scheduler callback.
-
-
Field Summary
Fields Modifier and Type Field Description (package private) Subscriber<? super T>actual(package private) Func1<Action0,Subscription>onScheduleprivate static longserialVersionUID(package private) Tvalue
-
Constructor Summary
Constructors Constructor Description ScalarAsyncProducer(Subscriber<? super T> actual, T value, Func1<Action0,Subscription> onSchedule)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcall()voidrequest(long n)Request a certain maximum number of items from this Producer.java.lang.StringtoString()-
Methods inherited from class java.util.concurrent.atomic.AtomicBoolean
compareAndExchange, compareAndExchangeAcquire, compareAndExchangeRelease, compareAndSet, get, getAcquire, getAndSet, getOpaque, getPlain, lazySet, set, setOpaque, setPlain, setRelease, weakCompareAndSet, weakCompareAndSetAcquire, weakCompareAndSetPlain, weakCompareAndSetRelease, weakCompareAndSetVolatile
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
actual
final Subscriber<? super T> actual
-
value
final T value
-
onSchedule
final Func1<Action0,Subscription> onSchedule
-
-
Constructor Detail
-
ScalarAsyncProducer
public ScalarAsyncProducer(Subscriber<? super T> actual, T value, Func1<Action0,Subscription> onSchedule)
-
-
Method Detail
-
request
public void request(long n)
Description copied from interface:ProducerRequest a certain maximum number of items from this Producer. This is a way of requesting backpressure. To disable backpressure, passLong.MAX_VALUEto this method.Requests are additive but if a sequence of requests totals more than
Long.MAX_VALUEthenLong.MAX_VALUErequests will be actioned and the extras may be ignored. Arriving atLong.MAX_VALUEby addition of requests cannot be assumed to disable backpressure. For example, the code below may result inLong.MAX_VALUErequests being actioned only.request(100); request(Long.MAX_VALUE-1);
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.util.concurrent.atomic.AtomicBoolean
-
-