android开发多线程编程,浅谈在android应用中的多线程编程与消息机制教程

学习安卓开发,需要学习很多相关的知识,在学习多线程编程及消息机制前,先对多线程以及多线程编程做下了解。多线程是指从软件或者硬件上实现多个线程并发执行的技术,具有多线程能力的计算机因有硬件支持而能够在同一时间执行多于一个线程,进而提升整体处理性能。而在Android的应用程序中其支持多线程,然而多线程编程为我们充分利用系统资源提供了便利,同时也为设计复杂UI和耗时操作提供了途径,提升了安卓用户的使用体验。

84953f577dc653e482befdee9701bfa2.png

在安卓应用开发中,会经常遇到需要多线程技术的时候,比如UI显示和数据处理分开。

在现实的应用中经常会遇到这种场景,需要我们新开一个线程来监听数据状态,比如数据的状态的改变、接收和发送等等,那么当发现数据状态改变时通知主线程,这个通知主要是通过消息机制发送消息到主线程,在主线程接收到通知之后进行处理(自定义消息处理接口)。

具体实现如下:

准备线程的创建和消息的处理,在线程的创建以及消息的处理时需要使用到android里面的Handler和Thread类这两个类,在主线程中添加两个成员Handler、Thread,并实现消息的发送和处理:

private Handler handler = new Handler(){

@Override

public void handleMessage(Message msg) {

// TODO Auto-generated method stub

switch(msg.what){

case 0:

//添加自定义消息处理

//...

break;

default:break;

}

}

};

private Thread MagCardDataListenThread = new Thread(new Runnable(){

@Override

public void run() {

// TODO Auto-generated method stub

while(isMagCardRunning){

try{

Thread.currentThread().sleep(1000);

//状态改变时发送消息到主线程

if(magcard.IsGetMagCardData()){

Message msg = new Message();

msg.what = 0;

handler.sendMessage(msg);

}

}catch(InterruptedException e){

e.printStackTrace();

}

}

}

});

启动子线程

MagCardDataListenThread.start();

上文对于线程的创建和消息的处理只需要两步就可以完成一个多线程的框架搭了。在这个过程中需要利用到的两个类Handler和Thread,在这里就不一一说明了,自行了解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值