Why is tryEmit not included in the FlowCollector interface?

Viewed 289

MutableSharedFlow and MutableStateFlow (via inheritance) include both the emit suspend function and the best effort, non-suspend tryEmit. But FlowCollector only includes emit in the interface. It seems to me the there no reason why the FlowCollector can't provide tryEmit as well given that it's safe enough to include in MutableSharedFlow.

It would be useful to be able to emit into a 'collector' interface like FlowCollector without launching a coroutine and dealing with the lifecycle issues coming from that. So why the omission?

0 Answers
Related