Skip to content

Single's Disposable is not disposing. #5276

@qwert2603

Description

@qwert2603

I noticed that Disposable returned from Single::subscribe(final BiConsumer<? super T, ? super Throwable> onCallback) returns false from Disposable::isDisposed even after onCallback was called. Version of RxJava is 2.0.8. Code sample:

import io.reactivex.Single
import io.reactivex.disposables.Disposable
import io.reactivex.schedulers.Schedulers

fun main(args: Array<String>) {

    var disposable: Disposable? = null
    disposable = Single.just(34)
            .subscribeOn(Schedulers.computation())
            .observeOn(Schedulers.io())
            .subscribe { item, throwable ->
                println("1 ${disposable?.isDisposed}")
            }

    println("2 ${disposable?.isDisposed}")
    Thread.sleep(1000)
    println("3 ${disposable?.isDisposed}")

}

Output is:

2 false
1 false
3 false

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions