【发布时间】:2021-12-07 05:41:01
【问题描述】:
我开始学习java reactor 3,下面的代码无法输出任何结果。
Flux.create(sink -> {
sink.next("produce a number: " + Math.random() * 100);
// sink.complete();
}).publishOn(Schedulers.elastic())
.subscribe(
consumer -> System.out.println(Thread.currentThread().getName() + consumer),
error -> System.out.println("error!" + error),
() -> {
System.out.println("task complete!");
});
【问题讨论】:
-
这段代码在哪里?在
main?我怀疑你根本没有等待它输出 -
但是,我在 main 中没有此代码的任何输出
-
您必须阻止
main(),直到用户输入System.in.read();。就在这之后subscribe()!你的问题是你的应用程序在你的Flux中执行之前退出 -
好的,这就是问题所在。谢谢!