我有两个使用Jsoup解析网站的asynctask和一个使用网站API检索Json数据的改造实例。所有这三项任务是否并行继续或按顺序执行?此外,我只能在完成所有三项任务时设置我的回收器适配器(2 asynctask和1 Retrofit)。
我如何知道所有三项任务何时完成(如果它们是并行执行的话),那么我可以设置recyclerview的适配器吗?
答案 0 :(得分:1)
如果您正在使用AsyncTask.execute(),那么您的两个Jsoup任务将在后台线程中逐个执行。
一旦来自改装线程池的线程空闲,您的改装调用就会开始。
因此,这些任务将并行开始。
要保持所有任务完成的跟踪,您可以创建一个公共回调方法,该方法在这些任务成功时被调用。 Asynctask的OnPostExecute调用此回调,然后onSuccess of Retrofit API调用调用此回调。
当你收到回调时增加一个计数变量..当计数达到3时..设置适配器。
请注意:您必须考虑错误处理方案。