Class ObservableWindowTimed.WindowExactBoundedObserver<T>
java.lang.Object
java.lang.Number
java.util.concurrent.atomic.AtomicInteger
io.reactivex.rxjava3.internal.operators.observable.ObservableWindowTimed.AbstractWindowObserver<T>
io.reactivex.rxjava3.internal.operators.observable.ObservableWindowTimed.WindowExactBoundedObserver<T>
- All Implemented Interfaces:
Observer<T>
,Disposable
,Serializable
,Runnable
- Enclosing class:
ObservableWindowTimed<T>
static final class ObservableWindowTimed.WindowExactBoundedObserver<T>
extends ObservableWindowTimed.AbstractWindowObserver<T>
implements Runnable
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static final class
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) long
(package private) final long
(package private) final boolean
(package private) final Scheduler
private static final long
(package private) final SequentialDisposable
(package private) UnicastSubject
<T> (package private) final Scheduler.Worker
Fields inherited from class io.reactivex.rxjava3.internal.operators.observable.ObservableWindowTimed.AbstractWindowObserver
bufferSize, done, downstream, downstreamCancelled, emitted, error, queue, timespan, unit, upstream, upstreamCancelled, windowCount
-
Constructor Summary
ConstructorsConstructorDescriptionWindowExactBoundedObserver
(Observer<? super Observable<T>> actual, long timespan, TimeUnit unit, Scheduler scheduler, int bufferSize, long maxSize, boolean restartTimerOnMaxSize) -
Method Summary
Modifier and TypeMethodDescription(package private) void
(package private) void
(package private) void
(package private) UnicastSubject
<T> createNewWindow
(UnicastSubject<T> window) (package private) void
drain()
void
run()
Methods inherited from class io.reactivex.rxjava3.internal.operators.observable.ObservableWindowTimed.AbstractWindowObserver
dispose, isDisposed, onComplete, onError, onNext, onSubscribe, 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
Methods inherited from class java.lang.Number
byteValue, shortValue
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
scheduler
-
restartTimerOnMaxSize
final boolean restartTimerOnMaxSize -
maxSize
final long maxSize -
worker
-
count
long count -
window
UnicastSubject<T> window -
timer
-
-
Constructor Details
-
WindowExactBoundedObserver
WindowExactBoundedObserver(Observer<? super Observable<T>> actual, long timespan, TimeUnit unit, Scheduler scheduler, int bufferSize, long maxSize, boolean restartTimerOnMaxSize)
-
-
Method Details
-
createFirstWindow
void createFirstWindow()- Specified by:
createFirstWindow
in classObservableWindowTimed.AbstractWindowObserver<T>
-
run
public void run() -
cleanupResources
void cleanupResources()- Specified by:
cleanupResources
in classObservableWindowTimed.AbstractWindowObserver<T>
-
boundary
-
drain
void drain()- Specified by:
drain
in classObservableWindowTimed.AbstractWindowObserver<T>
-
createNewWindow
-