当前位置:网站首页>AsyncTask的替代方案
AsyncTask的替代方案
2022-08-08 23:10:00 【jxq1994】
在使用AsyncTask加载数据时,如果遇到设备配置改变,比如设备旋转,你得负责管理它的生命周期,同时还要保存好数据,不让其因旋转丢失。虽然调用Fragment的setRetainInstance(true)方法来保存数据可以解决问题,但它不是万能的。很多时候,你还得编写特殊场景应对代码,让应用无懈可击。这些特殊场景有:用户在AsyncTask运行时点击后退键,以及启动AsyncTask的fragment因内存紧张而被销毁。
使用Loader是一种可行的解决方案,它可以代劳很多棘手的事情。Loader用来从某些数据源加载数据对象,数据源可以是磁盘、数据库、ContentProvider、网络甚至是另一进程。
AsyncTaskLoader是个抽象Loader,它可以使用AsyncTask把数据加载工作转移到其他线程上。我们创建的loader类几乎都是AsyncTaskLoader的子类。AsyncTaskLoader能在不阻塞主线程的前提下获取到数据,并把结果发送给目标对象。
下面就来看看它的具体用法吧。
边栏推荐
猜你喜欢
2022杭电多校六 1009-Map (巴那赫不动点)
【CUDA】版本自由切换
【CUDA】version switch freely
word文档标题怎么自动编号?
微信小程序错误 undefined Expecting ‘STRING‘,‘NUMBER‘,‘NULL‘,‘TRUE‘,‘FALSE‘,‘{‘,‘[‘, got ]解决方案
Virtual router redundancy protocol VRRP - double-machine hot backup
wps表格下拉选项怎么添加?wps表格下拉选项的添加方法
如何搭建一套自己公司的知识共享平台
【Pytorch】学习笔记(一)
Analysis of WLAN - Wireless Local Area Network
随机推荐
(newcoder 15079)无关(容斥原理)
如何使用 Eolink 实现 API 文档自动生成
C语言中指针的介绍
(2022杭电多校六)1012-Loop(单调栈+思维)
wps表格怎么筛选出需要的内容?wps表格筛选出需要的内容的方法
JS中的预编译(AO、GO详解)
C language library function summary2019.10.31
Dynamic Host Configuration Protocol DHCP (DHCPv4)
Free ARP
Tp5 in cache cache, storage cell phone text message authentication code
(2022牛客多校三)J-Journey(dijkstra)
(2022杭电多校三)1009.Package Delivery(贪心)
动手写prometheus的exporter-01-Gauge(仪表盘)
flutter 书写json解析类
PMP考点有哪些啊?
2022牛客多校六 B-Eezie and Pie (dfs)
PHP 正则给img的src添加域名
STM8L LCD digital tube driver, thermometer LCD display
如何实现call、apply、bind
动态主机配置协议DHCP(DHCPv4)