Android多线程学习笔记

学习原文出处:http://blog.csdn.net/xys289187120/article/details/6706952



1、Handler主要用于程序主线程与自己创建的线程通信。

注意点:

1、每次发送消息都要产生一个新的Message

2、loadImage()方法中时自己创建用于加载图片的线程


2、TimerTasker与Handler延迟多线程,Timer与TimerTask可以构造一个定时器,如同开启一个线程在指定的时间访问一次

注意点:

1、在TimerTask中开启一个线程任务,Timer指定执行的时间

2、schedule(TimerTask timerTask,long t1,long t2) 第二个参数为延迟t1毫秒后执行timerTasker,第三个参数是每隔t2毫秒执行一次timerTask


3、AsyncTask执行多线程

注意点:

1、在doInBackground(Object... params)中使用publishProgress(params);将参数传入到onProgressUpdate(Object... values)方法中进行相应的处理

2、AsyncTask使用execution(Object ...params)进行启动


4、多线程Looper的使用

注意点:

1、Looper用来管理消息队列和循环队列。

2、在handler中默认为mainlooper进行消息循环,在handler开启一个新的线程,则没有Looper循环,若要使这个线程具有消息队列和消息循环需用Looper.prepare()拿到looper

3、在Thread中创建消息队列和循环需用Looper.loop()


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android多线程是指在Android应用程序中同时执行多个线程的技术。在Android开发中,多线程主要用于处理耗时操作,以避免阻塞主线程(也称为UI线程),从而提高应用的响应性能。 在Android中,常用的多线程技术包括以下几种: 1. AsyncTask:这是一种轻量级的异步任务类,适用于较简单的后台任务。它封装了线程的管理和与UI线程的交互,可以在UI线程中执行一些耗时操作,如网络请求、数据库查询等。 2. HandlerThread:这是一种带有消息队列的线程类。它可以用来创建一个后台线程,并通过Handler与UI线程进行通信。通常用于执行需要长时间运行的任务或周期性任务。 3. ThreadPoolExecutor:这是一个线程池类,可以管理多个线程并发执行任务。通过使用线程池,可以有效地重用线程、控制并发数量、管理线程的生命周期等。 4. IntentService:这是一种继承自Service的特殊服务类,用于执行后台任务。它会自动创建工作线程来处理任务,并在任务完成后自动停止。 5. RxJava:这是一个响应式编程库,可以简化多线程编程。通过使用观察者模式和链式调用,可以方便地实现异步操作和线程切换。 除了以上几种常用的多线程技术,还可以使用Java原生的Thread类来创建和管理线程,但需要注意在UI线程中的使用,避免阻塞UI的响应。 在使用多线程时,需要注意线程安全性,避免出现数据竞争和死锁等问题。同时,也要合理地管理线程的生命周期,确保在不需要时及时停止和释放资源。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值