dsg*_*dsg 13 java multithreading android rx-java retrofit
我正在使用Retrofit为我的异步网络调用返回rxjava Observable.
我发现自己重复以下调用:
someApiCall().subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
好像我总是订阅IO线程并观察Android主线程.这似乎是我发现的所有资源的最佳实践.也许除了长时间运行的计算之外,我不太明白何时我们想要偏离这种模式.
有没有办法通过默认subscribeOn和observeOn线程来删除这个样板?
这是rxjava插件的用例吗?(我找不到很多使用它们的例子.)
我可以通过搞乱改造执行器来设置网络边界的默认线程吗?
Jak*_*ton 13
对于Observable响应,Retrofit当前将其设置subscribeOn为RestAdapter(提供的或默认的)HTTP执行器.这样做是为了将RxJava支持填充到现有行为中.
2.0的计划是提供为两者subscribeOn和observeOn明确设置默认值的能力(无论是两者,只有一个,还是两者都没有).
例如,如果您需要将多个API调用链接在一起,那么您不希望总是希望在主线程上进行观察的原因.
| 归档时间: |
|
| 查看次数: |
5621 次 |
| 最近记录: |