Sta*_*kii 7 java flux reactive
我有一个通量,应该几乎立即发出一个项目。此后,它可能会在很长一段时间内不再发射物品。如果最初没有收到任何项目,我希望它超时。但如果我使用该timeout(Duration)方法,每次在给定时间内没有收到任何项目时,它都会超时。
我现在的代码由于上述原因而不起作用:
messageFlux.timeout(Duration.ofSeconds(30)).doOnError(e -> {
// handle error
}).subscribe(m -> messageService.consumeMessage(m));
Run Code Online (Sandbox Code Playgroud)
有没有一种方法可以有效地做到这一点?
这对我有用。代替:
messageFlux.timeout(Duration.ofSeconds(30))
Run Code Online (Sandbox Code Playgroud)
我愿意:
messageFlux.timeout(Mono.just(0L).delayElement(Duration.ofSeconds(30)))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1124 次 |
| 最近记录: |