如何区分AsyncTask和Handler

下面这篇文章里,我们会为你介绍区分Asynctask和Handler的方法,并简单介绍它们的应用。

区别

  • 01

    AsyncTask 是android提供的轻量级的异步类,可以直接继承AsyncTask,在类中实现异步操作,并提供接口反馈当前异步执行的程度(可以通过接口实现UI进度更新),最后反馈执行的结果给UI主线程。 使用的优点: 简单、快捷 过程可控 使用的缺点: 在使用多个异步操作和并需要进行Ui变更时,就变得复杂起来.

  • 02

    Handler 在Handler 异步实现时,涉及到 Handler、Looper、Message、Thread四个对象,实现异步的流程是主线程启动Thread(子线程),àthread(子线程)运行并生成Message-àLooper,获取Message并传递给HandleràHandler,逐个获取Looper中的Message,并进行UI变更。 使用的优点: 结构清晰,功能定义明确 对于多个后台任务时,简单,清晰 使用的缺点: 在单个后台异步处理时,显得代码过多,结构过于复杂(相对性)

应用

  • 01

    AsyncTask定义了三种泛型类型 Params,Progress和Result。 Params 启动任务执行的输入参数,比如HTTP请求的URL。 Progress 后台任务执行的百分比。 Result 后台执行任务最终返回的结果,比如String。

  • 02

    使用过AsyncTask 的同学都知道一个异步加载数据最少要重写以下这两个方法: doInBackground(Params…) 后台执行,比较耗时的操作都可以放在这里。注意这里不能直接操作UI。此方法在后台线程执行,完成任务的主要工作,通常需要较长的时间。在执行过程中可以调用publicProgress(Progress…)来更新任务的进度。 onPostExecute(Result) 相当于Handler 处理UI的方式,在这里面可以使用在doInBackground 得到的结果处理操作UI。 此方法在主线程执行,任务执行的结果作为此方法的参数返回

(0)

相关推荐

  • 怎么迅速区分系统是32位?还是64位?

    之前一直傻傻地分不清自己的电脑究竟是32位还是62位,一直觉得这两个应该是没多少区分的。直到一次由于工作的要求,不得不逼着自己确认电脑到底支不支持64位的操作系统。之所以没能搞清楚这个问题,或许是得到 ...

  • 如何区分iPad充电器真假 iPad充电器辨别真伪方法

    iPad充电器怎么辨别真伪?现数码配件市场上充斥着各种高仿精仿品,一般人还真难以真假;而充电器所存在的安全隐患却又是如此让人胆战心惊!因而为了更好地避免这些意外发生,就一起来跟着国外工程师Ken Sh ...

  • 32位与64位操作系统怎么区分从32位和64位的概念上进行讲述

    有时候我们下载软件的时候,电脑系统便会提示,是选择安装32位的还是64位的呢?不是专业的电脑人士便会开始犯糊涂了,什么是32位?什么是64位的操作系统?他们之间究竟有什么区别呢?今天我们就具体的来学习 ...

  • 怎样区分EPSON 打印机的堵头与断线

    怎样区分EPSON 打印机的堵头与断线 ● 使用EPSON喷墨 打印机 时,应养成经常做喷嘴检查的习惯,尤其对于不天天使用的用户,可避免因为断线引起的打印稿报废,免得无谓的时间和墨水浪费 EPSON ...

  • 区分固态电容和电解电容

    从电气性能上讲,固态电容和普通的电解电容各有各的优点,前者最大的优点在于没有使用液态的电解液,这样在受热时不容易发生"胀肚"、"爆裂"等情况,使用寿命长、热稳定性好,适合于高频的工作环境;后者价格便宜 ...

  • 正确区分不同核心的P4 CPU

    早期市场上P4有两种接口,最初采用的是SOcket 423接口,采用该接口的P4体型较大。随后上市的就是目前市场上最常见的产品—— Socket478接口的P4。Socket 478接口的P4看起来非 ...

  • 诺基亚n1成世界首款支持USB正反插设备 不用区分正反

    目前移动设备上的USB插槽仅支持USB正插,而N1机身底部拥有一个USB Type-C插槽,它支持USB正插和反差。早先USB 3.1标准公的时候,USB推广组织就曾宣布了新型的“USB Type-C ...

  • 让Excel用颜色来区分成绩表中的分数

    学校里经常用EXCEL来统计分数,为了清楚地查看高分和低分,要用不同的颜色把高分和低分区分开来,例如:把不及格的分数以红色显示,90分以上的分数以蓝色显示,但是怎样做才能达到这种效果呢?下面就以图1为 ...

  • 如何区分Win8.Win8.1和Win8.1 Update

    许多朋友对Win8系统还不是了解,看到Win8、Win8.1和Win8.1 Update并不晓得如何区分,今天小编就要为大家普及一下这方面的知识。微软官方宣布的Win8正式版本有3个,分别是Windo ...