异步消息处理机制

本文深入探讨了Android中的异步消息处理机制,包括Message、Handler、MessageQueue和Looper的角色与交互。通过sendMessage()发送消息,handleMessage()进行处理。讲解了handler.post(Runnable r)的使用,并提供了内部实现流程图,以及阅读源码的理解,如ActivityThread启动时如何准备Looper和循环获取消息,以及如何通过enqueueMessage()将消息插入MessageQueue并由loop()方法分发执行。
摘要由CSDN通过智能技术生成
  1. Message.线程间传递消息
  2. Handle.发送和处理消息,利用sendMessage()发送消息,handleMessage()处理消息
  3. MessageQueue.消息队列,用于存放所有message,每个线程只有以一个MessageQueue对象
  4. Looper.是MessageQueue的管家,发现MessageQueue有消息时将它取出
public class MainActivity extends AppCompatActivity {
    private static final int CHANGE_ID=1;
    private TextView textView;
    private Handler handler = new Handler(){   //创建handle对象
        @Override
        public void handleMessage(Message msg) {    //处理message的逻辑
            switch(msg.what){         //根据msg.what对message进行匹配
                case CHANGE_ID:
                    textView.setText("hellllo worlllld");
                    break;
                default:
            }
        }
    };

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        textView = (TextView)findView
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值