问题:我们如何处理 Flux Generator当没有更多数据时?
我正在使用 Project Reactor 的 Flux API 来轮询放入 Redis 的数据(通过外部服务)。这需要无限期轮询,直到服务关闭/终止/停止。
我正在使用Flux Generator从 Redis 获取数据。 在某些情况下,Redis 中一段时间内没有可用数据,因此 Generator 将无法调用 onNext。但我想在 Redis 中有可用数据时恢复。
遇到这种情况我该如何处理?我看到以下选项:
1) 调用 onError
并显示自定义异常,表明当时没有可用数据
2)调用complete
来发出信号 - 在这种情况下,我定期创建Flux实例,并且当没有任何数据时,相同的操作将完成。
最佳答案
Flux.generate
用于保证始终生成的数据生成函数。使用 Flux.create
[1](如果可以从多个线程通知 Redis 监听器)或 Flux.push
[2](如果保证 Redis 监听器从单个线程通知)。
关于java - 通量发生器 - 当没有可用数据时如何处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60909798/