Я уверен, что где-то читал, что .isDisposed()
не гарантирует возврата true
, если .dispose()
не было вызвано явно.Но этот ответ говорит, что он всегда возвращает true
после вызова .onComplete()
, тогда как этот говорит, что .doOnDispose()
означает никогда вызывается после события завершения.
Я хотел бы создать Action
, который запускается, если Observable
расположен, но не, если он завершается нормально.Есть ли способ гарантировать это?Каков официальный ответ по семантике .isDisposed()
?Возможность того, что он может или не может вернуться true
после завершения, не очень удовлетворительна.
Обновление: я пытаюсь преобразовать Single
в 1-элемент Observable
.Как только он испускает свой предмет, он, конечно, станет завершенным.Но я все же хотел бы, чтобы его .dispose()
метод вызывал отдельное действие:
mObservable = mSingle
.toObservable()
.doOnDispose( () -> {
do stuff} );
Вся причина, по которой я преобразовываю Single
в Observable
, заключается в способности обрабатывать doOnDispose()
действие.Правильно ли я понимаю, что Single
разрушается после испускания его предмета, поэтому его метод doOnDispose
больше не доступен?(Если я ошибаюсь по этому поводу, я могу пропустить преобразование в Observable
)