双向沟通的Messenger(学习笔记一)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/oqzuser1q2w3e4r5t/article/details/88823072

前言

1、Messenger的概念和角色 

ac首先会启动BinderDriver,从线程池中取出线程,然后依次执行Binder()下的函数 ,bt将Msg丢到MQ,

然后主线程会把信拿出来处理。

2、 Meessenger支持双向沟通

 

     

   单身传递方式:

ac 调用Messenger中的IBinder,进而调用 MessengerImpl 来发送消息给MQ去处理

 双向传递方式:

 感觉双向通信就是多加了一套IBinder,Messenger,Messenger这套通信工具

 

 

 

 

 绑定工作:

 

信息传递:

把自已的Mes打包进去,因为Mes有指针指向它,所以只要找到Mes,就可以掌握到ibinder接口。

发送msg的处理:

 接收Msg的处理:

 

 这是一个典型的Proxy-stub设计模式

 

 

猜你喜欢

转载自blog.csdn.net/oqzuser1q2w3e4r5t/article/details/88823072