Je veux exécuter une méthode en arrière-plan en utilisant rxjava. Je me fiche du résultat.
void myHeavyMethod() { (...) }
Jusqu'à présent, la seule solution que j'ai est de modifier le type de retour par exemple boolean
.
boolean myHeavyMethod() { (...) return true; }
Ensuite je cours:
Completable.defer(() -> Completable.fromCallable(this::myHeavyMethod))
.subscribeOn(Schedulers.computation())
.subscribe(
() -> {},
throwable -> Log.e(TAG, throwable.getMessage(), throwable)
);
Existe-t-il un moyen de le faire en conservant le type de retour void
?
La méthode fromAction()
est ce que vous recherchez.
Completable.fromAction(this::myHeavyMethod)