2017-05-04 55 views
0

任何人都可以举例说明Flux.buffer(发布者其他)如何工作,即时无法利用其他发布者将原始通量分成多个列表。与其他发行商的缓冲区 - 弹簧反应器

例:

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); 
    }); 

这仍然打印原始列表的输出,而不是分裂它。

回答

0

bufferuntil带谓词实际上是我在找的东西。