Android中的线程和线程池的使用及封装使用总结

本文详细总结了Android中的线程使用,包括主线程、子线程及其应用场景,探讨了线程池的好处,如减少系统开销,控制并发数,并介绍了FixedThreadPool、CachedThreadPool、ScheduledThreadPool和SingleThreadExecutor四种线程池的特性及适用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

Android中的线程和线程池的使用频率非常高,本文总结了Android中常见的线程使用形式,希望对你有所帮助。

主线程和子线程

主线程(也叫UI线程):在java中默认情况下一个进程只有一个线程,这个线程就是主线程。其主要作用是处理和界面交互相关的逻辑,主线程不能做太多耗时的操作,否则会产生界面卡顿的感觉。为保持较快的响应速度,子线程就出场了。
子线程:也叫工作线程,除了主线程之外的都是子线程。

基本用途:主线程是运行四大组件及处理它们和用户的交互,子线程处理耗时的任务,如网络请求、I/O操作等。

Android中的线程表现形式:

Thread、AsyncTask、HanderThread、IntentService.

简单介绍一下后三者的注意事项:

  1. 1.AysncTask: 可理解为轻量级的线程池,异步任务类,其封装了Thread和Handler,通过AysncTask可以很方便的执行后台任务及在主线程中访问UI.

    缺点:不适合进行特别耗时的后台任务,对于特别耗时的任务最好用池线程池替换。

  2. HandlerThread: 继承自Thread,它是一种可以 使用Handler和Thread.实现也很简单,在run方法中通过Looper.prepare()来创建消息队列,并通过Looper.loop()来开启消息循环。

  3. <
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小羊子说

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值