我想知道为什么我可以做类似的事情:
data-city
成功。我知道在反应式编程中,我们不应在通道中处理空值
答案 0 :(得分:0)
因为可以用Mono
完成null
。在这种情况下,它将直接移动到具有空(空)内容的完整状态:
T t = callable.call();
if (t == null) {
sds.onComplete();
}
else {
sds.complete(t);
}
位置:
@Override
public final void onComplete() {
countDown();
}
当您致电block()
时,您只是从null
获得value
Mono
。
要点是,由于状态已经为complete
,因此通道中将无任何处理。因此,我们立即转到返回值null
。