栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > Android面试题

Android中的几种多线程实现方式都有哪些?

Android中的几种多线程实现方式都有哪些?

1.Activity.runonUiThread(Runnable)FA5C9FEB-0D18-48C8-A10C-611D3E7F8389 使用: runOnUiThread可以帮助你在线程中执行UI更新操作,我们只需要在线程中写上类似 “`youractivity. runonUiThread(new Runnable() { @Override public void run() {

 

                   // refresh ui 的操作代码

 

                } 

            });

2.Handler

andriod提供了 Handler 和 Looper 来满足线程间的通信。

      Handler 先进先出原则。

      Looper类用来管理特定线程内对象之间的消息交换(Message Exchange)。

      1)Looper: 一个线程可以产生一个Looper对象,由它来管理此线程里的Message Queue(消息队列)。 

      2)Handler: 你可以构造Handler对象来与Looper沟通,以便push新消息到Message Queue里;或者接   收Looper从Message Queue取出)所送来的消息。 

      3) Message Queue(消息队列):用来存放线程放入的消息。 

      4)线程:UI thread 通常就是main thread,而Android启动程序时会替它建立一个Message Queue。

3.AsyncTask

AsyncTask,是android提供的轻量级的异步类,可以直接继承AsyncTask,在类中实现异步操作,并提供接口反馈当前异步执行的程度(可以通过接口实现UI进度更新),最后反馈执行的结果给UI主线程.

使用的优点:

        l 简单,快捷

        2 过程可控

使用的缺点:

        l 在使用多个异步操作和并需要进行Ui变更时,就变得复杂起来.

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/274325.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号