缓冲与其他出版商 - 春天反应堆

时间:2017-05-04 16:44:24

标签: spring project-reactor

任何人都可以举例说明Flux.buffer(Publisher other)是如何工作的,我无法利用其他发布者将原始流量分成多个列表。

前:

    List<String> strings = new ArrayList<>();
    strings.add("A");
    strings.add("B");
    Flux<String> stringFlux = Flux.fromIterable(strings).cache();


    for(int i = 0; i < 100; i++) {
        strings.add(""+i);
    }
    List<Integer> integers = new ArrayList<>(2);
        integers.add(1);
    integers.add(1);
    integers.add(1);

    stringFlux.buffer((a) -> {
        Flux.fromIterable(integers);
    }).subscribe(a -> {
        System.out.println(a);
    });

这仍然会将原始列表打印为输出而不是将其拆分。

1 个答案:

答案 0 :(得分:0)

带有谓词的

bufferuntil实际上就是我想要的。