@Override public int parallelism() { return source.parallelism(); }
@Override public void subscribe(CoreSubscriber<? super T> actual) { MergeSequentialMain<T> parent = new MergeSequentialMain<>(actual, source .parallelism(), prefetch, queueSupplier); actual.onSubscribe(parent); source.subscribe(parent.subscribers); }
@Override public void subscribe(CoreSubscriber<? super T> actual) { MergeReduceMain<T> parent = new MergeReduceMain<>(actual, source.parallelism(), reducer); actual.onSubscribe(parent); source.subscribe(parent.subscribers); }
@Override public void subscribe(CoreSubscriber<? super T> actual) { MergeSortMain<T> parent = new MergeSortMain<>(actual, source.parallelism(), comparator); actual.onSubscribe(parent); source.subscribe(parent.subscribers); }
@Override public void subscribe(CoreSubscriber<? super T> actual) { FluxMergeOrdered.MergeOrderedMainProducer<T> main = new FluxMergeOrdered.MergeOrderedMainProducer<>(actual, valueComparator, prefetch, source.parallelism()); actual.onSubscribe(main); source.subscribe(main.subscribers); } }
@Override public void subscribe(CoreSubscriber<? super GroupedFlux<Integer, T>> actual) { int n = source.parallelism(); @SuppressWarnings("unchecked") ParallelInnerGroup<T>[] groups = new ParallelInnerGroup[n]; for (int i = 0; i < n; i++) { groups[i] = new ParallelInnerGroup<>(i); } FluxArray.subscribe(actual, groups); source.subscribe(groups); }
@Test public void fromSourceHasCpuParallelism() { int cpus = Runtime.getRuntime() .availableProcessors(); ParallelFlux<Integer> parallelFlux = ParallelFlux.from(Flux.range(1, 10)); assertThat(parallelFlux.parallelism()) .isEqualTo(cpus); }
@Test public void parallelism() { ParallelFlux<Integer> source = Flux.range(1, 4).parallel(3); ParallelFilter<Integer> test = new ParallelFilter<>(source, i -> i % 2 == 0); assertThat(test.parallelism()) .isEqualTo(3) .isEqualTo(source.parallelism()); }
@Test public void parallelism() { ParallelFlux<Integer> source = Flux.range(1, 4).parallel(3); AssemblySnapshot stacktrace = new AssemblySnapshot(null, Traces.callSiteSupplierFactory.get()); ParallelFluxOnAssembly<Integer> test = new ParallelFluxOnAssembly<>(source, stacktrace); assertThat(test.parallelism()) .isEqualTo(3) .isEqualTo(source.parallelism()); }
@Test public void parallelism() { ParallelFlux<Integer> source = Flux.just(500, 300).parallel(10); ParallelPeek<Integer> test = new ParallelPeek<>(source, null, null, null, null, null, null, null, null); assertThat(test.parallelism()) .isEqualTo(source.parallelism()) .isEqualTo(10); }
@Test public void parallelism() { ParallelFlux<Integer> source = Flux.range(1, 4).parallel(3); ParallelFluxName<Integer> test = new ParallelFluxName<>(source, "foo", null); assertThat(test.parallelism()) .isEqualTo(3) .isEqualTo(source.parallelism()); }
@Test public void parallelism() { ParallelFlux<Integer> source = Flux.range(1, 4).parallel(3); ParallelFluxHide<Integer> test = new ParallelFluxHide<>(source); assertThat(test.parallelism()) .isEqualTo(3) .isEqualTo(source.parallelism()); }
@Test public void parallelism() { ParallelFlux<Integer> source = Flux.range(1, 4).parallel(3); ParallelLift<Integer, Integer> test = new ParallelLift<>(source, (sc, su) -> su); assertThat(test.parallelism()) .isEqualTo(3) .isEqualTo(source.parallelism()); }
@Test public void parallelism() { ParallelFlux<Integer> source = Flux.range(1, 4).parallel(3); ParallelMap<Integer, String> test = new ParallelMap<>(source, i -> "" + i); assertThat(test.parallelism()).isEqualTo(source.parallelism()) .isEqualTo(3); }
@Test public void parallelism() { ParallelFlux<Integer> source = Flux.range(1, 4).parallel(3); ParallelLog<Integer> test = new ParallelLog<>(source, null); assertThat(test.parallelism()) .isEqualTo(3) .isEqualTo(source.parallelism()); }
@Test public void parallelism() { ParallelFlux<Integer> source = Flux.just(500, 300).parallel(10); ParallelReduceSeed<Integer, String> test = new ParallelReduceSeed<>(source, () -> "", (s, i) -> s + i); assertThat(test.parallelism()) .isEqualTo(source.parallelism()) .isEqualTo(10); }
@Test public void parallelism() { ParallelFlux<Integer> source = Flux.range(1, 4).parallel(3); ParallelCollect<Integer, List<Integer>> test = new ParallelCollect<>(source, ArrayList::new, List::add); assertThat(test.parallelism()) .isEqualTo(3) .isEqualTo(source.parallelism()); }
@Test public void parallelism() { ParallelFlux<Integer> source = Flux.range(1, 4).parallel(3); ParallelConcatMap<Integer, Integer> test = new ParallelConcatMap<>(source, i -> Flux.range(1, i), Queues.small(), 123, FluxConcatMap.ErrorMode.IMMEDIATE); assertThat(test.parallelism()) .isEqualTo(3) .isEqualTo(source.parallelism()); }
@Test public void parallelism() { ParallelFlux<Integer> source = Flux.range(1, 4).parallel(3); ParallelFlatMap<Integer, Integer> test = new ParallelFlatMap<>(source, i -> Flux.range(1, i), false, 12, Queues.small(), 123, Queues.small()); assertThat(test.parallelism()) .isEqualTo(3) .isEqualTo(source.parallelism()); }
@Test public void asChangesParallelism() { assertThat(ParallelFlux.from(Flux.range(1, 10), 3) .as(pf -> ParallelFlux.from(pf.sequential(), 5) .log("secondParallel")) .parallelism()) .isEqualTo(5); }