问题描述
Asynctask在Android上不再可用 我在下面的同一时间运行asynctask 如何将下面的代码更改为rxandroid?
for(int i=0;i<30;i++)
{
new AppTask().executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR,dbCable,data);
}
解决方法
Disposable subscription = Observable.fromCallable(new Callable() { <your work> })
.subscribeOn(Schedulers.io())
.observeOn(AndroidScedulers.mainThread())
.subscribe({ <success> },{ <error> });
然后您需要在subscription.dispose()
中的某个地方调用onStop()
或类似的方式,以免泄漏某些东西。
Rx是一种很酷的数据流处理机制。如果仅将Kotlin协程用于后台线程工作,则应考虑使用它。您可以在此处了解有关Rx方法的更多信息:http://reactivex.io