yangyang12138

导航

flux1

1.or操作
fluxA.or(fluxB)
流A流B同时执行第一个执行的返回结果,另外一个被取消

2.when
Flux.when(fluxA,fluxB)
两个流同时执行,当两个流全部执行完的时候,返回一个Mono<void>

3.switchIfEmpty
fluxA.switchIfEmpty(fluxB)
当流A为空时切换到流B

4.then
形式 fluxA.then(fluxB)当fluxA完成时,执行fluxB

5.takeWhile
形式 fluxA.takeWhile(s->s>0) take直到返回true

6.startWith
形式 fluxA.startWith(fluxB)以fluxB中数据为起点,小于fluxB的部分被忽略

7.onErrorResume
形式 fluxA.onErrorResume(e->{return fluxB}) 当fluxA发生错误时,转到fluxB

8.replay
形式 fluxA.replay() 生成一个全新的fluxB,fluxB的起点是relay的时间点

9.publish
形式 fluxA.publish(2) 生成一个全新的fluxB,fluxB包含从publish开始的两条数据

10.scan
形式 fluxA.scan(s->f(s,0)),生成一个全新的fluxB,fluxB中的元素是 f(s,f(si-1))

11.join
形式 fluxA.join(fluxB,a->{return fluxA1},b->{return fluxB1},(a,b)->c) 返回a,b生成的c。a->{return fluxA1}用于选择fluxA的数据,a->{return fluxA1}用于选择fluxB的数据

11.join
形式 fluxA.groupBy(s->{return 'a'}) 根据返回值形成多个流

posted on 2023-02-22 02:08  杨杨09265  阅读(65)  评论(0编辑  收藏  举报