作为主题,Mono.subscribe
的第四个变体似乎并未调用成功消费者和完整消费者。它只调用订阅消费者。
以下代码失败
CountDownLatch latch = new CountDownLatch(3);
Mono.just(1).subscribe(i -> latch.countDown(), throwable -> {}, latch::countDown, s -> latch.countDown());
boolean success = latch.await(1, TimeUnit.SECONDS);
Assert.assertEquals(true, success);
答案 0 :(得分:0)
这是因为带有subscribe
的{{1}}版本适合您驾驶最初的Consumer<Subscription>
。如果您未在消费者中拨打request
订阅,则不会发出任何数据且request(n)
无法完成...
这可以按预期工作:
Mono