首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我应该为每个http连接使用一个Loader,还是为所有这些使用一个Loader?

我应该为每个http连接使用一个Loader,还是为所有这些使用一个Loader?
EN

Stack Overflow用户
提问于 2018-09-28 18:33:07
回答 2查看 50关注 0票数 0

我是Android的新手,试图制作一个简单的新闻提要应用程序。我正在使用Asynctaskloader进行后台操作。目前,我正在使用一个单一的装载机连接不同的新闻来源。我的问题是,我应该为每个新闻源定义并运行不同的加载器吗?还是一个加载器也会处理它?我之所以问这个问题,是因为当应用程序打开时,需要5-10秒的时间来加载新闻(到目前为止,我只添加了三个新闻源),所以会不会是因为使用了一个装载机?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-09-28 19:26:48

使用单个加载程序的loadInBackground方法访问不同数据源的问题是,这种访问将在关联线程中连续进行。从N个源获取和返回新闻的总时间将是每个源的时间之和,包括延迟或超时,前提是要等到下载所有内容才能继续演示。

您应该考虑更多线程/加载器或其他策略(可能获取1、显示1、fetch 2、add 2等),其中用户不会对等待感到沮丧。

票数 1
EN

Stack Overflow用户

发布于 2018-09-28 19:56:04

加载器是很好的,因为它具有处理生命周期的能力,但它的效率不如LiveData和ViewModel。如果您关心性能、速度和最新情况,请使用Architecture组件( LiveData,ViewModel),而且,您不必坚持旧的做事系统,您可以编写多个简单的AsyncTask,并使用ViewModel和LiveData包装它。它像魔法一样工作,比装载机更好。有关如何将AsyncTask包装为LiveData和ViewModel的信息,请访问https://medium.com/androiddevelopers/lifecycle-aware-data-loading-with-android-architecture-components-f95484159de4

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52560950

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档