【Android 初学】11、关于Android当中的线程(初级)
来源:互联网 发布:陕西广电网络覆盖 编辑:程序博客网 时间:2024/05/29 08:36
Start Android
1、回顾Java当中的线程概念
1)线程的两种实现方式
2)线程的生命周期
3)多线程同步
(多个线程访问同一个资源,在同)
2、MainThread与Worker Thread
1)UI相关的代码就是MainThread
2)其他代码就是WorkerThread(不允许操作UI,ProgressBar可以)
3)在一个应用程序当中,主线程通常用于接收用户的输入,以及将运算的结果反馈给用户(也就是主线程不能阻塞)
对于一些可能会产生阻塞的操作,必须放在Worker Thread当中
3、Android当中的线程使用
4、什么是Handler
5、Handler、Looper和MessgeQueue的基本原理(可用于实现线程之间的通信)
这三者配合可完成消息队列
1)首先,生成一个类(继承Handler),并创建Handler类的对象的引用Myhandler(名字可自定义)
2)再将新的firstHandler对象赋值给Handler类的对象的引用Myhandler(向上转型);
3)Message smg = Myhandler.obtainMessage(); 利用Myhandler对象的obtainMessage方法创建一个消息对象
4)对msg对象进行操作,让msg附带消息;如:msg.what = 100;
5)调用Myhandler.sendMessage(msg);方法,将msg这个消息对象放到消息队列当中
6)Looper将会从消息队列当中将消息取出
7)Looper将会找到与消息对象对应的Handler对象(这里是Myhandler)
8)最后Looper将会调用Myhandler对象的handlerMessage(Message msg);方法,用于处理消息对象
6、通过Handler实现线程间通信
7、在主线程当中实现Handler的handlerMessage()方法
8、在Worker Thread当中通过Handler发送消息
1)准备Looper对象
在线程的类的run方法中,调用Looper.prepare();
2)在Worker Thread生成Handler对象
handler = new Handler(){public void handleMessage(Message msg){}}
3)在MainThread当中发送消息
0 0
- 【Android 初学】11、关于Android当中的线程(初级)
- Android 当中的线程-- MarsChen Android 开发教程学习笔记
- Android当中的多线程
- 关于Android当中新建activity的注册问题
- Android当中的MVP模式(七)终篇---关于对MVP模式中代码臃肿
- 关于Android初学的一点建议
- 关于android初学的小知识强化
- Android当中的常用控件
- Android当中setOrientation的介绍
- Android当中Handler的使用
- android当中SQLite的使用
- android当中的消息推送
- android学习日记(Android当中的常见控件)
- 关于Android的线程问题
- Android的初级学习
- Android初级开发----关于SurfaceView(平面视图的笔记)
- Android当中的防锯齿(Bitmap & Canvas )
- Android当中的防锯齿(Bitmap & Canvas )
- Exception details are logged in Window > Show View > Error Log
- 【Android 初学】8、进度条(ProgressBar、SeekBar、RatingBar)
- 【Android 初学】9、Activity生命周期
- Selenium官方文档:Selenium RC 安装步骤
- 【Android 初学】10、Intent对象的使用
- 【Android 初学】11、关于Android当中的线程(初级)
- nginx搭建流媒体服务器
- 记录一个技术男走过的路(上)
- python+ing
- linux获得系统编码
- C++求从1到n的正整数中1出现的次数
- 组件接口(API)设计指南-目录
- 黑马程序员:Java基础——多线程之安全问题与同步
- springMVC的一些学习