s, поэтому она не меняет семантику, полученную от
у обрабатывать клики таким образом, чтобы они игнорировались до тех пор, пока я выполняю обработку некоторых произошедших кликов.
Я думал, что смогу сделать это, используя противодавление, например так:
private val clicks = PublishProcessor.create<Unit>()
// ...
clicks
.onBackpressureDrop()
.concatMapSingle(::handleClick, 0)
Но это выдает ошибку, потому что есть требование, чтоconcatMapSingle
необходимо предварительно выбрать хотя бы один элемент, что заставляет его ставить в очередь клик и обрабатывать его сразу после завершения обработки, а это не то, что мне нужно. Я хочу обработать клик, только если в данный момент обработка не происходит.
Есть ли какой-нибудь другой оператор, который я мог бы использовать для достижения желаемого эффекта?