【问题标题】:do operators of Flux in Project Reactor execute asynchronously?Project Reactor 中 Flux 的操作符是异步执行的吗?
【发布时间】:2021-07-14 17:04:15
【问题描述】:

例如,flux.map(i->{Thread.sleep(1000); return i*i;}).flatMap(i->Monn.just(i))。 map 操作符本质上是异步执行的,还是我们必须更改线程以便它可以异步执行(比如我们切换到flux.map(i->{Thread.sleep(1000); return i*i;}).subscribeOn(Schedulers.elastic()).flatMap(i->Monn.just(i)))?

还有这个例子:flux.map(i->i*i).flatMap(i->Monn.just(i))。 map 操作器本质上是异步执行的,还是我们必须更改线程以便它可以像上一段中那样异步执行?

【问题讨论】:

    标签: java asynchronous flux reactor


    【解决方案1】:

    获得 Flux 或 Mono 并不一定意味着它在专用线程中运行。相反,大多数运算符继续在前一个运算符执行的线程中工作。除非指定,最顶层的操作符(源)本身在调用 subscribe() 的线程上运行。以上就是我想知道的。

    【讨论】:

      猜你喜欢
      • 2020-09-14
      • 2019-05-29
      • 2018-07-04
      • 2023-02-13
      • 2021-06-12
      • 1970-01-01
      • 2021-12-22
      • 2018-09-26
      • 2015-04-24
      相关资源
      最近更新 更多