GameFramework 学习笔记(五)Event
好多部分都用到了事件 先说下事件部分吧
.....UnityGameFramework 的事件组件也只是对 GameFramework 的一层简单封装没有其他内容
还是直接看 GameFramework的事件
我们先看一下 这个 事件池
这个订阅 事件就是把事件处理函数存放 到事件池的 字典<事件Id,处理函数链表> 的处函数链表中
然后我们再看这个 取消订阅事件处理函数 他竟然不是 直接采用和 订阅事件处理函数 相反的操作 而是 出来两个字典m_CachedNodes m_CachedNodes 判断字典的数量 鬼知道是啥意思 所以我们得看看在哪里 对这个字典进行了添加操作
然后我们在 最后面的处理事件结点的地方可以看到对 这个字典的操作
只是存放了一下过程中的结点 也看不出来什么
画个小黄图 理解下
这样 取消订阅也就说完啦
虽然存放起来了 但是在哪里调用呢
好吧 这样我们的事件池
我们一直在说这个事件池是如何处理事件,订阅事件之类的 我们却没有这 事件到底是啥
这个没啥好说的 好像都能看懂 我们又一次的看到了这个引用 池
在创建事件时候从引用池里拿引用 处理事件时候 把归还引用 引用池的内容好像还不少 下次说 引用池
我们回到 事件管理器 毕竟我们已经把 事件池 看懂了
然后事件管理器这不就是在初始化一个事件池,然后一直在调用事件池里的内容嘛