您现在的位置是:首页 > 文章详情

Android中的异步处理技术

日期:2018-08-29点击:451

为什么需要异步处理技术

Android应用的开发要求我们正确处理主线程与子线程之间的关系,耗时操作应当放到子线程中,避免阻塞主线程,导致ANR。异步处理技术是提高应用性能解决主线程和子线程之间通讯问题的关键。

Android中的线程分类

Android应用中各种类型的线程本质上都基于Linux系统的pthreads,在应用层可以分为三种类型的线程。
  • 主线程:也成为UI线程,随着应用的启动而启动,主要用来运行Android组件和更新UI。
  • Binder线程:用于跨进程通讯的,每个进程都维护了一个线程池,用来处理其他进程中线程发送的消息,这些进程包括系统服务、Intents、ContentProviders和Service等。一个典型的应用场景是应用提供一个给其他进程通过AIDL接口绑定的Service。
  • 后台线程:应用中显示创建的线程都是后台线程,后台线程主要用来进行数据的处理网络请求等,在Android框架中,通过WindowManager赋予了主线程只能处理UI更新以及后台线程不能直接操作UI的限制。

Android中的异步处理技术

Android中的异步处理技术有很多,常见的有Thread、AsyncTask、Handler&Looper、Executors等,在实际项目中,我们需要根据具体业务进行选择,Android中完整的异步处理继承树如下图所示。
img_7672811dbe475feba2a5e7587b79fef1.png
个人博客:https://myml666.github.io
原文链接:https://yq.aliyun.com/articles/665547
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章