Class FlowableWindowTimed.WindowExactBoundedSubscriber<T>
- java.lang.Object
-
- java.lang.Number
-
- java.util.concurrent.atomic.AtomicInteger
-
- io.reactivex.rxjava3.internal.operators.flowable.FlowableWindowTimed.AbstractWindowSubscriber<T>
-
- io.reactivex.rxjava3.internal.operators.flowable.FlowableWindowTimed.WindowExactBoundedSubscriber<T>
-
- All Implemented Interfaces:
FlowableSubscriber<T>,java.io.Serializable,java.lang.Runnable,org.reactivestreams.Subscriber<T>,org.reactivestreams.Subscription
- Enclosing class:
- FlowableWindowTimed<T>
static final class FlowableWindowTimed.WindowExactBoundedSubscriber<T> extends FlowableWindowTimed.AbstractWindowSubscriber<T> implements java.lang.Runnable
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static classFlowableWindowTimed.WindowExactBoundedSubscriber.WindowBoundaryRunnable
-
Field Summary
Fields Modifier and Type Field Description (package private) longcount(package private) longmaxSize(package private) booleanrestartTimerOnMaxSize(package private) Schedulerschedulerprivate static longserialVersionUID(package private) SequentialDisposabletimer(package private) UnicastProcessor<T>window(package private) Scheduler.Workerworker-
Fields inherited from class io.reactivex.rxjava3.internal.operators.flowable.FlowableWindowTimed.AbstractWindowSubscriber
bufferSize, done, downstream, downstreamCancelled, emitted, error, queue, requested, timespan, unit, upstream, upstreamCancelled, windowCount
-
-
Constructor Summary
Constructors Constructor Description WindowExactBoundedSubscriber(org.reactivestreams.Subscriber<? super Flowable<T>> actual, long timespan, java.util.concurrent.TimeUnit unit, Scheduler scheduler, int bufferSize, long maxSize, boolean restartTimerOnMaxSize)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) voidboundary(FlowableWindowTimed.WindowExactBoundedSubscriber.WindowBoundaryRunnable sender)(package private) voidcleanupResources()(package private) voidcreateFirstWindow()(package private) UnicastProcessor<T>createNewWindow(UnicastProcessor<T> window)(package private) voiddrain()voidrun()-
Methods inherited from class io.reactivex.rxjava3.internal.operators.flowable.FlowableWindowTimed.AbstractWindowSubscriber
cancel, onComplete, onError, onNext, onSubscribe, request, windowDone
-
Methods inherited from class java.util.concurrent.atomic.AtomicInteger
accumulateAndGet, addAndGet, compareAndExchange, compareAndExchangeAcquire, compareAndExchangeRelease, compareAndSet, decrementAndGet, doubleValue, floatValue, get, getAcquire, getAndAccumulate, getAndAdd, getAndDecrement, getAndIncrement, getAndSet, getAndUpdate, getOpaque, getPlain, incrementAndGet, intValue, lazySet, longValue, set, setOpaque, setPlain, setRelease, toString, updateAndGet, weakCompareAndSet, weakCompareAndSetAcquire, weakCompareAndSetPlain, weakCompareAndSetRelease, weakCompareAndSetVolatile
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
scheduler
final Scheduler scheduler
-
restartTimerOnMaxSize
final boolean restartTimerOnMaxSize
-
maxSize
final long maxSize
-
worker
final Scheduler.Worker worker
-
count
long count
-
window
UnicastProcessor<T> window
-
timer
final SequentialDisposable timer
-
-
Method Detail
-
createFirstWindow
void createFirstWindow()
- Specified by:
createFirstWindowin classFlowableWindowTimed.AbstractWindowSubscriber<T>
-
run
public void run()
- Specified by:
runin interfacejava.lang.Runnable
-
cleanupResources
void cleanupResources()
- Specified by:
cleanupResourcesin classFlowableWindowTimed.AbstractWindowSubscriber<T>
-
boundary
void boundary(FlowableWindowTimed.WindowExactBoundedSubscriber.WindowBoundaryRunnable sender)
-
drain
void drain()
- Specified by:
drainin classFlowableWindowTimed.AbstractWindowSubscriber<T>
-
createNewWindow
UnicastProcessor<T> createNewWindow(UnicastProcessor<T> window)
-
-