Пакетирование в Android с окном RxJava или буфером? - PullRequest
0 голосов
/ 26 июня 2018

Я собираюсь реализовать механизм пакетной обработки перед публикацией API для простого сбора и регистрации событий. Поскольку это Android, я также хотел бы обрабатывать события жизненного цикла, если эта служба остановлена, так как можно вручную очистить буферизованное окно, если служба остановлена, но счет или время еще не были достигнуты.

Например, у меня есть PublishSubject (subject), я создаю плавающий объект и выполняю над ним оконную операцию следующим образом:

subject.toFlowable(BackpressureStrategy.BUFFER)
            .window(30,
                    TimeUnit.SECONDS,
                    20,
                    true)
            .flatMapSingle { it.toList() }
            .subscribe (this::send)

Если мой сервис / приложение приостановлено или остановлено, я бы хотел просто отправить то, что находится в буфере.

...