运行 void 方法在后台

Run void method in background

我想 运行 在后台使用 rxjava 的方法。我不在乎结果。

void myHeavyMethod() { (...) }

到目前为止,我唯一的解决方案是将 return 类型修改为例如boolean.

boolean myHeavyMethod() { (...) return true; }

之后我运行:

Completable.defer(() -> Completable.fromCallable(this::myHeavyMethod))
        .subscribeOn(Schedulers.computation())
        .subscribe(
                () -> {},
                throwable -> Log.e(TAG, throwable.getMessage(), throwable)
        );

有没有办法保持 void return 类型?

fromAction() 方法就是您要找的。

Completable.fromAction(this::myHeavyMethod)