Métricas do repositório
- Stars
- (4.748 stars)
- Métricas de merge de PR
- (Mesclagem média 16d 15h) (25 fundiu PRs em 30d)
Description
Current implementation uses parallel scheduler by default which is in essence a ScheduledThreadPoolExecutor which has the task queue guarded by ReentrantLock, which means two trips through said lock per signal on average
After looking at Netty's https://github.com/netty/netty/blob/4.1/handler/src/main/java/io/netty/handler/timeout/IdleStateHandler.java there appears to be a way to do fewer timeout task reschedules if you let go of the idea illustrated by the current marble diagrams (new signal cancels the previous timeout task)
WDYT? this really prevents Flux.timeout from being useful with high-frequency publishers which may occasionally stall
suggestion inspired by https://gitter.im/reactor/reactor?at=61968a44197fa95a1c7adf05