我有一個自定義類,叫它Builder
。它有一個方法act()
,它執行異步操作。操作完成後,我想發出一個事件。RxJava:手錶自定義類
我該如何在RxJava中完成這項工作?
看起來像一個簡單的任務,但我還沒有看到正確的RxJava方式來做到這一點。
更多的細節,典型的act()
方法看起來像這樣:
class Builder
public void act() {
processRunner.runAsync(new ProcessRunner.ProcessResultHandler(){
@Override
public void onComplete(int result) {
// Emit event
}
});
}
而且我想要的是在消費類,叫:
builder.act()
不知怎麼被警告時onComplete()
叫做。
我也控制ProcessRunner
,所以我想將其轉換成RxJava和鏈的結果,但現在我要簡單的用例!
PublishSubject是我終於實現了這一個,但我把它放在構建器類本身。感謝您的額外信息,它看起來像一個不錯的方法! – mtyson
請記住,主題是「熱點可觀察」,這意味着即使沒有人訂閱它也可以發射物品。例如,你的傳播者可以在沒有人聽到它時開始發射物品。 –
這是真的,但可以處理傳播者類內部。你可以檢查一些是否訂閱它。 –