有人知道Flux.onErrorContinue
参数为以下类型的原因吗?
public final Flux<T> onErrorContinue(BiConsumer<Throwable, Object> errorConsumer) {
...
}
代替
public final Flux<T> onErrorContinue(BiConsumer<Throwable, T> errorConsumer) {
...
}
?
答案 0 :(得分:0)
好吧,我想我才明白:
Flux<Integer> f1 = Flux.fromStream(Stream.of(1));
Flux<String> f2 = f1.map(i ->{
throw new RuntimeException("bang");
});
f2.onErrorContinue((t, o) -> {
System.out.println("o = " + o.getClass());
}).subscribe(System.out::println);
输出:
o = class java.lang.Integer
从字符串的流量中,您不知道导致问题的元素是整数,因此唯一的选择就是将其视为对象...