我正在寻找衡量某项任务执行情况的解决方案
我想这可能与使用EventBus发布开始计算和停止的事件非常类似。
所以我可以有一个功能:
doSomething(){
//start counting
}
在ohter函数中我想访问计数器并调用stop:
otherFunctionWhichCanBeInvokedLater(){
//stop counter and get the duration time
}
在Rx中有没有很好的方法来实现这个? 我想为此使用Kotlin和RxJava2。
答案 0 :(得分:0)
如何使用doOnXXX
挂钩,如下所示:
fun startTimer() {
//start counting
}
fun stopTimer() {
//stop counter and get the duration time
}
fun observe() {
Observable.just(...)
.doOnSubscribe { startTimer() }
.doFinally { stopTimer() }
.subscribeBy(...)
}
根据您的要求,您可以使用doOnFinally
和/或doOnComplete
的设置替换doOnError
。