温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
好,接下来呢,给大家总结回顾一下啊,这个even bus这个源码这里面呢啊,大家要掌握哪些事情呢?首先第一个呢,是这个in bus总线接收消息分这个四大,四大县城啊这个事情啊,大家要记一下。包括这个这个地方。也就是这四大县城啊,大家记一下,接下来呢,就是这个年轻事件啊,大家有有所了解啊,这个是一个in的一个特点,接下来再往下就是这个源码了,也就是我们本堂课啊重点的内容包括这个注册源码,发送源码,还有这个解注册源码,那么给大家总结回顾一下要记住哪些事情,第一个注册这个源码分析啊,它是怎么一个过程呢?它首先第一步是通过反射或注解获取。啊,反射和注解。获取所有订阅的方法啊,这是第一步,第二步将当前订阅者添加到even bus总的事件订阅者的集合中啊,添加到总的集合,第三步将当前订阅者订阅所有的事件类型添加到这个里面。
01:13
还记得吗?添加到这个总的集合中是为了进行发送啊,发送这个事件,再一个呢,是为了解注册啊,解注册的时候用这是两个事件。好,接下来呢,是到了这个发送源码的一个分析,这里面发送源码非常非常简单,他就干了这么两件事情,第一件事情得到要发送的这个事件类型,你是要发street还是这个message event啊等等这个事件类型。然后呢,就根据。事件类型,获取到所有的订阅者,嗯,你就看一下谁订阅了我这个消息。谁订阅了呢?我就要循环向每个订阅者进行发送。啊,定义了我就发送,就这么简单,接下来到了这个解注册,哎,解注册的时候就用到了这个啊,这个方法,这个方法啊,这个集合就它。
02:05
通过它获取当前订阅者所有的时间类型啊,你想想。你这是一个啊,这里面呢,有两个你定义的方法啊。首先你通过它获取到当前订阅者所有的时间类型,那么再一个呢,是实践类型。这个是这个me类型。啊,Method invent类型,那么拿到这两个类型之后啊,干什么呢?循环便利每一个事件类型啊,比如说就便利它到它了,那么删除当前订阅者订阅的方法,那么就将当前这个订阅者是不是may啊,啊mayx,那么从may中将它删除掉。啊,这这样是不是你就不会给他再发送消息了,因为解除撤了嘛,啊就没必要了啊是这个意思,所以说啊,啊总结这么几句话啊,就是。
03:01
首先啊,这里面有三条发送呢啊,两条解注册两条啊,记住这些就OK了啊下面呢,这个是本次课的这个参考的一些啊博客啊,大家回头可以看一下。
我来说两句