基于Unity的多线程之间的事件派发
2014-01-05 02:42
316 查看
用unity做网游的同学应该不少,其中一个很蛋疼的问题就是主线程中尤其是UI部分很多实例都是不允许子线程修改的,那么我们就只有想办法把这些子线程里的数据缓存起来,让主线程自己拿着这些数据该干嘛干嘛去。
废话少说,先上源码。
使用方法很简单,在随便哪个Monobehaviour脚本里的Update函数里调用EventDispatcher.Instance().OnTick();就可以了。
例:
需要派发事件时:
eventValue可以是任何类型的数据。
在需要的地方监听事件:
其中EventCallback是一个参数为EventBase的函数:
进阶用法:
细心的同学应该发现了,EventDispatcher类的最下面有个ChatEvent,
调用
在监听函数里
酱紫,就可以很方便取出自定义的事件中的多个参数了~
废话少说,先上源码。
例:
在需要的地方监听事件:
细心的同学应该发现了,EventDispatcher类的最下面有个ChatEvent,
相关文章推荐
- 基于Unity的多线程之间的事件派发
- Unity 脚本之间的消息传递,事件管理
- 基于Delegate 实现的事件派发管理系统
- 饿了么项目---12、父子组件、兄弟组件之间数据通信与事件派发(关于购物车添加按钮的动画)
- vc 基于对话框多线程编程实例——线程之间的通信
- swf之间的交互(上)全局变量VS全局派发事件
- 基于MONO事件派发机制之SendMessage
- Unity事件管理类,用于不同对象之间传递消息
- Java多线程开发系列之番外篇:事件派发线程---EventDispatchThread
- 基于事件的NIO多线程服务器
- C#多线程-不同线程之间通过事件委托封送调用方法(转)
- Unity3D技巧在Unity中使用事件/委托机制(event/delegate)进行GameObject之间的通信
- 基于vue 兄弟组件之间事件触发(详解)
- 基于事件的NIO多线程服务器
- 在Unity中使用事件/委托机制(event/delegate)进行GameObject之间的通信
- [Unity通信]一个基于socket的3DARPG网络游戏(一):建立连接和事件分发
- 【转】基于事件的NIO多线程服务器
- 基于事件的 NIO 多线程服务器--转载
- C#基于事件驱动的多串口多线程串口通讯软件架构设计
- 基于事件的NIO多线程服务器(转)