public final class Flowables
extends java.lang.Object
| Modifier and Type | Method and Description |
|---|---|
static io.reactivex.Flowable<java.lang.Long> |
intervalBackpressure(long initialDelay,
long period,
java.util.concurrent.TimeUnit unit)
Periodically tries to emit an ever increasing long value or
buffers (efficiently) such emissions until the downstream requests.
|
static io.reactivex.Flowable<java.lang.Long> |
intervalBackpressure(long initialDelay,
long period,
java.util.concurrent.TimeUnit unit,
io.reactivex.Scheduler scheduler)
Periodically tries to emit an ever increasing long value or
buffers (efficiently) such emissions until the downstream requests.
|
static io.reactivex.Flowable<java.lang.Long> |
intervalBackpressure(long period,
java.util.concurrent.TimeUnit unit)
Periodically tries to emit an ever increasing long value or
buffers (efficiently) such emissions until the downstream requests.
|
static io.reactivex.Flowable<java.lang.Long> |
intervalBackpressure(long period,
java.util.concurrent.TimeUnit unit,
io.reactivex.Scheduler scheduler)
Periodically tries to emit an ever increasing long value or
buffers (efficiently) such emissions until the downstream requests.
|
static <T extends java.lang.Comparable<? super T>> |
orderedMerge(boolean delayErrors,
int prefetch,
org.reactivestreams.Publisher<T>... sources)
Merges the source Publishers in an ordered fashion picking the smallest of the available value from
them (determined by their natural order), allows delaying any error they may signal and sets the prefetch
amount when requesting from these Publishers.
|
static <T extends java.lang.Comparable<? super T>> |
orderedMerge(boolean delayErrors,
org.reactivestreams.Publisher<T>... sources)
Merges the source Publishers in an ordered fashion picking the smallest of the available value from
them (determined by their natural order) and allows delaying any error they may signal.
|
static <T> io.reactivex.Flowable<T> |
orderedMerge(java.util.Comparator<? super T> comparator,
boolean delayErrors,
int prefetch,
org.reactivestreams.Publisher<T>... sources)
Merges the source Publishers in an ordered fashion picking the smallest of the available value from
them (determined by the Comparator), allows delaying any error they may signal and sets the prefetch
amount when requesting from these Publishers.
|
static <T> io.reactivex.Flowable<T> |
orderedMerge(java.util.Comparator<? super T> comparator,
boolean delayErrors,
org.reactivestreams.Publisher<T>... sources)
Merges the source Publishers in an ordered fashion picking the smallest of the available value from
them (determined by the Comparator) and allows delaying any error they may signal.
|
static <T> io.reactivex.Flowable<T> |
orderedMerge(java.util.Comparator<? super T> comparator,
org.reactivestreams.Publisher<T>... sources)
Merges the source Publishers in an ordered fashion picking the smallest of the available value from
them (determined by the Comparator).
|
static <T extends java.lang.Comparable<? super T>> |
orderedMerge(java.lang.Iterable<? extends org.reactivestreams.Publisher<T>> sources)
Merges the source Publishers in an ordered fashion picking the smallest of the available value from
them (determined by their natural order).
|
static <T extends java.lang.Comparable<? super T>> |
orderedMerge(java.lang.Iterable<? extends org.reactivestreams.Publisher<T>> sources,
boolean delayErrors)
Merges the source Publishers in an ordered fashion picking the smallest of the available value from
them (determined by their natural order) and allows delaying any error they may signal.
|
static <T extends java.lang.Comparable<? super T>> |
orderedMerge(java.lang.Iterable<? extends org.reactivestreams.Publisher<T>> sources,
boolean delayErrors,
int prefetch)
Merges the source Publishers in an ordered fashion picking the smallest of the available value from
them (determined by their natural order), allows delaying any error they may signal and sets the prefetch
amount when requesting from these Publishers.
|
static <T> io.reactivex.Flowable<T> |
orderedMerge(java.lang.Iterable<? extends org.reactivestreams.Publisher<T>> sources,
java.util.Comparator<? super T> comparator)
Merges the source Publishers in an ordered fashion picking the smallest of the available value from
them (determined by the Comparator).
|
static <T> io.reactivex.Flowable<T> |
orderedMerge(java.lang.Iterable<? extends org.reactivestreams.Publisher<T>> sources,
java.util.Comparator<? super T> comparator,
boolean delayErrors)
Merges the source Publishers in an ordered fashion picking the smallest of the available value from
them (determined by the Comparator) and allows delaying any error they may signal.
|
static <T> io.reactivex.Flowable<T> |
orderedMerge(java.lang.Iterable<? extends org.reactivestreams.Publisher<T>> sources,
java.util.Comparator<? super T> comparator,
boolean delayErrors,
int prefetch)
Merges the source Publishers in an ordered fashion picking the smallest of the available value from
them (determined by the Comparator), allows delaying any error they may signal and sets the prefetch
amount when requesting from these Publishers.
|
static <T extends java.lang.Comparable<? super T>> |
orderedMerge(org.reactivestreams.Publisher<T>... sources)
Merges the source Publishers in an ordered fashion picking the smallest of the available value from
them (determined by their natural order).
|
static <T> io.reactivex.Flowable<T> |
repeat(T item)
Repeats a scalar value indefinitely.
|
static <T> io.reactivex.Flowable<T> |
repeatCallable(java.util.concurrent.Callable<T> callable)
Repeatedly calls the given Callable to produce items indefinitely.
|
static <T,R> io.reactivex.Flowable<R> |
zipLatest(io.reactivex.functions.Function<? super java.lang.Object[],? extends R> combiner,
org.reactivestreams.Publisher<? extends T>... sources)
Zips the latest available values of the source Publishers via a combiner function where the
emission rate is determined by the slowest Publisher and the downstream consumption rate.
|
static <T,R> io.reactivex.Flowable<R> |
zipLatest(io.reactivex.functions.Function<? super java.lang.Object[],? extends R> combiner,
io.reactivex.Scheduler scheduler,
org.reactivestreams.Publisher<? extends T>... sources)
Zips the latest available values of the source Publishers via a combiner function where the
emission rate is determined by the slowest Publisher and the downstream consumption rate.
|
static <T,R> io.reactivex.Flowable<R> |
zipLatest(java.lang.Iterable<? extends org.reactivestreams.Publisher<? extends T>> sources,
io.reactivex.functions.Function<? super java.lang.Object[],? extends R> combiner)
Zips the latest available values of the source Publishers via a combiner function where the
emission rate is determined by the slowest Publisher and the downstream consumption rate.
|
static <T,R> io.reactivex.Flowable<R> |
zipLatest(java.lang.Iterable<? extends org.reactivestreams.Publisher<? extends T>> sources,
io.reactivex.functions.Function<? super java.lang.Object[],? extends R> combiner,
io.reactivex.Scheduler scheduler)
Zips the latest available values of the source Publishers via a combiner function where the
emission rate is determined by the slowest Publisher and the downstream consumption rate.
|
static <T1,T2,R> io.reactivex.Flowable<R> |
zipLatest(org.reactivestreams.Publisher<T1> source1,
org.reactivestreams.Publisher<T2> source2,
io.reactivex.functions.BiFunction<? super T1,? super T2,? extends R> combiner)
Zips the latest available values of the source Publishers via a combiner function where the
emission rate is determined by the slowest Publisher and the downstream consumption rate.
|
static <T1,T2,R> io.reactivex.Flowable<R> |
zipLatest(org.reactivestreams.Publisher<T1> source1,
org.reactivestreams.Publisher<T2> source2,
io.reactivex.functions.BiFunction<? super T1,? super T2,? extends R> combiner,
io.reactivex.Scheduler scheduler)
Zips the latest available values of the source Publishers via a combiner function where the
emission rate is determined by the slowest Publisher and the downstream consumption rate.
|
static <T1,T2,T3,R> |
zipLatest(org.reactivestreams.Publisher<T1> source1,
org.reactivestreams.Publisher<T2> source2,
org.reactivestreams.Publisher<T3> source3,
io.reactivex.functions.Function3<? super T1,? super T2,? super T3,? extends R> combiner)
Zips the latest available values of the source Publishers via a combiner function where the
emission rate is determined by the slowest Publisher and the downstream consumption rate.
|
static <T1,T2,T3,R> |
zipLatest(org.reactivestreams.Publisher<T1> source1,
org.reactivestreams.Publisher<T2> source2,
org.reactivestreams.Publisher<T3> source3,
io.reactivex.functions.Function3<? super T1,? super T2,? super T3,? extends R> combiner,
io.reactivex.Scheduler scheduler)
Zips the latest available values of the source Publishers via a combiner function where the
emission rate is determined by the slowest Publisher and the downstream consumption rate.
|
static <T1,T2,T3,T4,R> |
zipLatest(org.reactivestreams.Publisher<T1> source1,
org.reactivestreams.Publisher<T2> source2,
org.reactivestreams.Publisher<T3> source3,
org.reactivestreams.Publisher<T4> source4,
io.reactivex.functions.Function4<? super T1,? super T2,? super T3,? super T4,? extends R> combiner)
Zips the latest available values of the source Publishers via a combiner function where the
emission rate is determined by the slowest Publisher and the downstream consumption rate.
|
static <T1,T2,T3,T4,R> |
zipLatest(org.reactivestreams.Publisher<T1> source1,
org.reactivestreams.Publisher<T2> source2,
org.reactivestreams.Publisher<T3> source3,
org.reactivestreams.Publisher<T4> source4,
io.reactivex.functions.Function4<? super T1,? super T2,? super T3,? super T4,? extends R> combiner,
io.reactivex.Scheduler scheduler)
Zips the latest available values of the source Publishers via a combiner function where the
emission rate is determined by the slowest Publisher and the downstream consumption rate.
|
@BackpressureSupport(value=FULL) @SchedulerSupport(value="none") public static <T extends java.lang.Comparable<? super T>> io.reactivex.Flowable<T> orderedMerge(org.reactivestreams.Publisher<T>... sources)
T - the value type of all sourcessources - the iterable sequence of sources@BackpressureSupport(value=FULL)
@SchedulerSupport(value="none")
public static <T extends java.lang.Comparable<? super T>> io.reactivex.Flowable<T> orderedMerge(boolean delayErrors,
org.reactivestreams.Publisher<T>... sources)
T - the value type of all sourcessources - the iterable sequence of sourcesdelayErrors - if true, source errors are delayed until all sources terminate in some way@BackpressureSupport(value=FULL)
@SchedulerSupport(value="none")
public static <T extends java.lang.Comparable<? super T>> io.reactivex.Flowable<T> orderedMerge(boolean delayErrors,
int prefetch,
org.reactivestreams.Publisher<T>... sources)
T - the value type of all sourcessources - the iterable sequence of sourcesdelayErrors - if true, source errors are delayed until all sources terminate in some wayprefetch - the number of items to prefetch from the sources@BackpressureSupport(value=FULL)
@SchedulerSupport(value="none")
public static <T> io.reactivex.Flowable<T> orderedMerge(java.util.Comparator<? super T> comparator,
org.reactivestreams.Publisher<T>... sources)
T - the value type of all sourcessources - the iterable sequence of sourcescomparator - the comparator to use for comparing items;
it is called with the last known smallest in its first argument@BackpressureSupport(value=FULL)
@SchedulerSupport(value="none")
public static <T> io.reactivex.Flowable<T> orderedMerge(java.util.Comparator<? super T> comparator,
boolean delayErrors,
org.reactivestreams.Publisher<T>... sources)
T - the value type of all sourcessources - the iterable sequence of sourcescomparator - the comparator to use for comparing items;
it is called with the last known smallest in its first argumentdelayErrors - if true, source errors are delayed until all sources terminate in some way@BackpressureSupport(value=FULL)
@SchedulerSupport(value="none")
public static <T> io.reactivex.Flowable<T> orderedMerge(java.util.Comparator<? super T> comparator,
boolean delayErrors,
int prefetch,
org.reactivestreams.Publisher<T>... sources)
T - the value type of all sourcessources - the iterable sequence of sourcescomparator - the comparator to use for comparing items;
it is called with the last known smallest in its first argumentdelayErrors - if true, source errors are delayed until all sources terminate in some wayprefetch - the number of items to prefetch from the sources@BackpressureSupport(value=FULL)
@SchedulerSupport(value="none")
public static <T> io.reactivex.Flowable<T> orderedMerge(java.lang.Iterable<? extends org.reactivestreams.Publisher<T>> sources,
java.util.Comparator<? super T> comparator)
T - the value type of all sourcessources - the iterable sequence of sourcescomparator - the comparator to use for comparing items;
it is called with the last known smallest in its first argument@BackpressureSupport(value=FULL)
@SchedulerSupport(value="none")
public static <T> io.reactivex.Flowable<T> orderedMerge(java.lang.Iterable<? extends org.reactivestreams.Publisher<T>> sources,
java.util.Comparator<? super T> comparator,
boolean delayErrors)
T - the value type of all sourcessources - the iterable sequence of sourcescomparator - the comparator to use for comparing items;
it is called with the last known smallest in its first argumentdelayErrors - if true, source errors are delayed until all sources terminate in some way@BackpressureSupport(value=FULL)
@SchedulerSupport(value="none")
public static <T> io.reactivex.Flowable<T> orderedMerge(java.lang.Iterable<? extends org.reactivestreams.Publisher<T>> sources,
java.util.Comparator<? super T> comparator,
boolean delayErrors,
int prefetch)
T - the value type of all sourcessources - the iterable sequence of sourcescomparator - the comparator to use for comparing items;
it is called with the last known smallest in its first argumentdelayErrors - if true, source errors are delayed until all sources terminate in some wayprefetch - the number of items to prefetch from the sources@BackpressureSupport(value=FULL) @SchedulerSupport(value="none") public static <T extends java.lang.Comparable<? super T>> io.reactivex.Flowable<T> orderedMerge(java.lang.Iterable<? extends org.reactivestreams.Publisher<T>> sources)
T - the value type of all sourcessources - the iterable sequence of sources@BackpressureSupport(value=FULL)
@SchedulerSupport(value="none")
public static <T extends java.lang.Comparable<? super T>> io.reactivex.Flowable<T> orderedMerge(java.lang.Iterable<? extends org.reactivestreams.Publisher<T>> sources,
boolean delayErrors)
T - the value type of all sourcessources - the iterable sequence of sourcesdelayErrors - if true, source errors are delayed until all sources terminate in some way@BackpressureSupport(value=FULL)
@SchedulerSupport(value="none")
public static <T extends java.lang.Comparable<? super T>> io.reactivex.Flowable<T> orderedMerge(java.lang.Iterable<? extends org.reactivestreams.Publisher<T>> sources,
boolean delayErrors,
int prefetch)
T - the value type of all sourcessources - the iterable sequence of sourcesdelayErrors - if true, source errors are delayed until all sources terminate in some wayprefetch - the number of items to prefetch from the sources@BackpressureSupport(value=FULL) @SchedulerSupport(value="none") public static <T> io.reactivex.Flowable<T> repeat(T item)
T - the value typeitem - the value to repeat@BackpressureSupport(value=FULL) @SchedulerSupport(value="none") public static <T> io.reactivex.Flowable<T> repeatCallable(java.util.concurrent.Callable<T> callable)
T - the value typecallable - the Callable to call@BackpressureSupport(value=FULL)
@SchedulerSupport(value="io.reactivex:computation")
public static io.reactivex.Flowable<java.lang.Long> intervalBackpressure(long period,
java.util.concurrent.TimeUnit unit)
computation Scheduler to time
the emission and likely deliver the value (unless backpressured).period - the emission period (including the delay for the first emission)unit - the emission time unit@BackpressureSupport(value=FULL)
@SchedulerSupport(value="custom")
public static io.reactivex.Flowable<java.lang.Long> intervalBackpressure(long period,
java.util.concurrent.TimeUnit unit,
io.reactivex.Scheduler scheduler)
computation Scheduler to time
the emission and likely deliver the value (unless backpressured).period - the emission period (including the delay for the first emission)unit - the emission time unitscheduler - the scheduler to use for timing and likely emitting items@BackpressureSupport(value=FULL)
@SchedulerSupport(value="io.reactivex:computation")
public static io.reactivex.Flowable<java.lang.Long> intervalBackpressure(long initialDelay,
long period,
java.util.concurrent.TimeUnit unit)
computation Scheduler to time
the emission and likely deliver the value (unless backpressured).initialDelay - the initial delay before emitting the first 0Lperiod - the emission period after the first emissionunit - the emission time unit@BackpressureSupport(value=FULL)
@SchedulerSupport(value="custom")
public static io.reactivex.Flowable<java.lang.Long> intervalBackpressure(long initialDelay,
long period,
java.util.concurrent.TimeUnit unit,
io.reactivex.Scheduler scheduler)
Scheduler provided to time
the emission and likely deliver the value (unless backpressured).initialDelay - the initial delay before emitting the first 0Lperiod - the emission period (including the delay for the first emission)unit - the emission time unitscheduler - the scheduler to use for timing and likely emitting items@BackpressureSupport(value=UNBOUNDED_IN)
@SchedulerSupport(value="none")
public static <T,R> io.reactivex.Flowable<R> zipLatest(io.reactivex.functions.Function<? super java.lang.Object[],? extends R> combiner,
org.reactivestreams.Publisher<? extends T>... sources)
Non-consumed source values are overwritten by newer values. Unlike combineLatest, source
values are not reused to form new combinations.
If any of the sources runs out of items, the other sources are cancelled and the sequence completes.
A: ---o-o-o------o-o----o---o-|-------
B: ---------x-x--x-------x-----x--x---
======= zipLatest (o, x -> M) ========
R: ---------M----M-------M-----M|-----
Scheduler
and the combined item emission happens on the thread that won the internal emission-right race.T - the common source value typeR - the result typecombiner - the function receiving the latest values of the sources and returns a value
to be emitted to the downstream.sources - the array of source Publishers to zip/combine@BackpressureSupport(value=UNBOUNDED_IN)
@SchedulerSupport(value="custom")
public static <T,R> io.reactivex.Flowable<R> zipLatest(io.reactivex.functions.Function<? super java.lang.Object[],? extends R> combiner,
io.reactivex.Scheduler scheduler,
org.reactivestreams.Publisher<? extends T>... sources)
Non-consumed source values are overwritten by newer values. Unlike combineLatest, source
values are not reused to form new combinations.
If any of the sources runs out of items, the other sources are cancelled and the sequence completes.
A: ---o-o-o------o-o----o---o-|-------
B: ---------x-x--x-------x-----x--x---
======= zipLatest (o, x -> M) ========
R: ---------M----M-------M-----M|-----
Scheduler provided.T - the common source value typeR - the result typecombiner - the function receiving the latest values of the sources and returns a value
to be emitted to the downstream.sources - the array of source Publishers to zip/combinescheduler - the Scheduler to use for emitting items and/or terminal signals@BackpressureSupport(value=UNBOUNDED_IN)
@SchedulerSupport(value="none")
public static <T,R> io.reactivex.Flowable<R> zipLatest(java.lang.Iterable<? extends org.reactivestreams.Publisher<? extends T>> sources,
io.reactivex.functions.Function<? super java.lang.Object[],? extends R> combiner)
Non-consumed source values are overwritten by newer values. Unlike combineLatest, source
values are not reused to form new combinations.
If any of the sources runs out of items, the other sources are cancelled and the sequence completes.
A: ---o-o-o------o-o----o---o-|-------
B: ---------x-x--x-------x-----x--x---
======= zipLatest (o, x -> M) ========
R: ---------M----M-------M-----M|-----
Scheduler scheduler
and the combined item emission happens on the thread that won the internal emission-right race.T - the common source value typeR - the result typecombiner - the function receiving the latest values of the sources and returns a value
to be emitted to the downstream.sources - the array of source Publishers to zip/combine@BackpressureSupport(value=UNBOUNDED_IN)
@SchedulerSupport(value="custom")
public static <T,R> io.reactivex.Flowable<R> zipLatest(java.lang.Iterable<? extends org.reactivestreams.Publisher<? extends T>> sources,
io.reactivex.functions.Function<? super java.lang.Object[],? extends R> combiner,
io.reactivex.Scheduler scheduler)
Non-consumed source values are overwritten by newer values. Unlike combineLatest, source
values are not reused to form new combinations.
If any of the sources runs out of items, the other sources are cancelled and the sequence completes.
A: ---o-o-o------o-o----o---o-|-------
B: ---------x-x--x-------x-----x--x---
======= zipLatest (o, x -> M) ========
R: ---------M----M-------M-----M|-----
Scheduler provided.T - the common source value typeR - the result typecombiner - the function receiving the latest values of the sources and returns a value
to be emitted to the downstream.sources - the array of source Publishers to zip/combinescheduler - the Scheduler to use for emitting items and/or terminal signals@BackpressureSupport(value=UNBOUNDED_IN)
@SchedulerSupport(value="none")
public static <T1,T2,R> io.reactivex.Flowable<R> zipLatest(org.reactivestreams.Publisher<T1> source1,
org.reactivestreams.Publisher<T2> source2,
io.reactivex.functions.BiFunction<? super T1,? super T2,? extends R> combiner)
Non-consumed source values are overwritten by newer values. Unlike combineLatest, source
values are not reused to form new combinations.
If any of the sources runs out of items, the other sources are cancelled and the sequence completes.
A: ---o-o-o------o-o----o---o-|-------
B: ---------x-x--x-------x-----x--x---
======= zipLatest (o, x -> M) ========
R: ---------M----M-------M-----M|-----
Scheduler scheduler
and the combined item emission happens on the thread that won the internal emission-right race.T1 - the value type of the first source PublisherT2 - the value type of the second source PublisherR - the result typecombiner - the function receiving the latest values of the sources and returns a value
to be emitted to the downstream.source1 - the first source Publisher instancesource2 - the second source Publisher instance@BackpressureSupport(value=UNBOUNDED_IN)
@SchedulerSupport(value="custom")
public static <T1,T2,R> io.reactivex.Flowable<R> zipLatest(org.reactivestreams.Publisher<T1> source1,
org.reactivestreams.Publisher<T2> source2,
io.reactivex.functions.BiFunction<? super T1,? super T2,? extends R> combiner,
io.reactivex.Scheduler scheduler)
Non-consumed source values are overwritten by newer values. Unlike combineLatest, source
values are not reused to form new combinations.
If any of the sources runs out of items, the other sources are cancelled and the sequence completes.
A: ---o-o-o------o-o----o---o-|-------
B: ---------x-x--x-------x-----x--x---
======= zipLatest (o, x -> M) ========
R: ---------M----M-------M-----M|-----
Scheduler provided.T1 - the value type of the first source PublisherT2 - the value type of the second source PublisherR - the result typecombiner - the function receiving the latest values of the sources and returns a value
to be emitted to the downstream.source1 - the first source Publisher instancesource2 - the second source Publisher instancescheduler - the Scheduler to use for emitting items and/or terminal signals@BackpressureSupport(value=UNBOUNDED_IN)
@SchedulerSupport(value="none")
public static <T1,T2,T3,R> io.reactivex.Flowable<R> zipLatest(org.reactivestreams.Publisher<T1> source1,
org.reactivestreams.Publisher<T2> source2,
org.reactivestreams.Publisher<T3> source3,
io.reactivex.functions.Function3<? super T1,? super T2,? super T3,? extends R> combiner)
Non-consumed source values are overwritten by newer values. Unlike combineLatest, source
values are not reused to form new combinations.
If any of the sources runs out of items, the other sources are cancelled and the sequence completes.
A: ---o-o-o------o-o----o---o-|-------
B: ---------x-x--x-------x-----x--x---
======= zipLatest (o, x -> M) ========
R: ---------M----M-------M-----M|-----
Scheduler scheduler
and the combined item emission happens on the thread that won the internal emission-right race.T1 - the value type of the first source PublisherT2 - the value type of the second source PublisherT3 - the value type of the third source PublisherR - the result typecombiner - the function receiving the latest values of the sources and returns a value
to be emitted to the downstream.source1 - the first source Publisher instancesource2 - the second source Publisher instancesource3 - the third source Publisher instance@BackpressureSupport(value=UNBOUNDED_IN)
@SchedulerSupport(value="custom")
public static <T1,T2,T3,R> io.reactivex.Flowable<R> zipLatest(org.reactivestreams.Publisher<T1> source1,
org.reactivestreams.Publisher<T2> source2,
org.reactivestreams.Publisher<T3> source3,
io.reactivex.functions.Function3<? super T1,? super T2,? super T3,? extends R> combiner,
io.reactivex.Scheduler scheduler)
Non-consumed source values are overwritten by newer values. Unlike combineLatest, source
values are not reused to form new combinations.
If any of the sources runs out of items, the other sources are cancelled and the sequence completes.
A: ---o-o-o------o-o----o---o-|-------
B: ---------x-x--x-------x-----x--x---
======= zipLatest (o, x -> M) ========
R: ---------M----M-------M-----M|-----
Scheduler provided.T1 - the value type of the first source PublisherT2 - the value type of the second source PublisherT3 - the value type of the third source PublisherR - the result typecombiner - the function receiving the latest values of the sources and returns a value
to be emitted to the downstream.source1 - the first source Publisher instancesource2 - the second source Publisher instancesource3 - the third source Publisher instancescheduler - the Scheduler to use for emitting items and/or terminal signals@BackpressureSupport(value=UNBOUNDED_IN)
@SchedulerSupport(value="none")
public static <T1,T2,T3,T4,R> io.reactivex.Flowable<R> zipLatest(org.reactivestreams.Publisher<T1> source1,
org.reactivestreams.Publisher<T2> source2,
org.reactivestreams.Publisher<T3> source3,
org.reactivestreams.Publisher<T4> source4,
io.reactivex.functions.Function4<? super T1,? super T2,? super T3,? super T4,? extends R> combiner)
Non-consumed source values are overwritten by newer values. Unlike combineLatest, source
values are not reused to form new combinations.
If any of the sources runs out of items, the other sources are cancelled and the sequence completes.
A: ---o-o-o------o-o----o---o-|-------
B: ---------x-x--x-------x-----x--x---
======= zipLatest (o, x -> M) ========
R: ---------M----M-------M-----M|-----
Scheduler scheduler
and the combined item emission happens on the thread that won the internal emission-right race.T1 - the value type of the first source PublisherT2 - the value type of the second source PublisherT3 - the value type of the third source PublisherT4 - the value type of the fourth source PublisherR - the result typecombiner - the function receiving the latest values of the sources and returns a value
to be emitted to the downstream.source1 - the first source Publisher instancesource2 - the second source Publisher instancesource3 - the third source Publisher instancesource4 - the fourth source Publisher instance@BackpressureSupport(value=UNBOUNDED_IN)
@SchedulerSupport(value="custom")
public static <T1,T2,T3,T4,R> io.reactivex.Flowable<R> zipLatest(org.reactivestreams.Publisher<T1> source1,
org.reactivestreams.Publisher<T2> source2,
org.reactivestreams.Publisher<T3> source3,
org.reactivestreams.Publisher<T4> source4,
io.reactivex.functions.Function4<? super T1,? super T2,? super T3,? super T4,? extends R> combiner,
io.reactivex.Scheduler scheduler)
Non-consumed source values are overwritten by newer values. Unlike combineLatest, source
values are not reused to form new combinations.
If any of the sources runs out of items, the other sources are cancelled and the sequence completes.
A: ---o-o-o------o-o----o---o-|-------
B: ---------x-x--x-------x-----x--x---
======= zipLatest (o, x -> M) ========
R: ---------M----M-------M-----M|-----
Scheduler provided.T1 - the value type of the first source PublisherT2 - the value type of the second source PublisherT3 - the value type of the third source PublisherT4 - the value type of the fourth source PublisherR - the result typecombiner - the function receiving the latest values of the sources and returns a value
to be emitted to the downstream.source1 - the first source Publisher instancesource2 - the second source Publisher instancesource3 - the third source Publisher instancesource4 - the fourth source Publisher instancescheduler - the Scheduler to use for emitting items and/or terminal signals