Kotlin Flow timeout operator and Java ExecutorService integration: does timeout cancel upstream collector or only drop emissions?
When a Kotlin Flow is collected on a dispatcher created with Dispatchers.from(ExecutorService), applying the timeout operator raises a design question about what happens to the upstream collector when the timeout expires. The timeout operator may either cancel the upstream collector, triggering its onCompletion and releasing resources tied to the ExecutorSer