Нет, таких каналов нет, не стесняйтесь создать проблему .
Ближайший обходной путь, который вы можете иметь, - это предоставить расширение для ConflatedBroadcastChannel
, которое отбросит существующий элемент:
fun <T> ConflatedBroadcastChannel<T>.subscription(): ReceiveChannel<T> {
val subscription = openSubscription()
subscription.poll()
return subscription
}
С точки зрения потребителя, эта подписка имеет ту же семантику, что и XStream
, но она не соответствует части "Нет буфера": отправленный элемент будет сохранен в памяти (~ не может быть удален ) до следующего send
.