Closed gsm958708323 closed 5 months ago
此处 GC 来源是 Action 的 delegate 的 Combine.这个无法避免,不存在一帧 同时 10000 次的同时监听和发送事件的真实情况,事实上也才 system 的 Action delegate.Combine 10000 次也才2.5mb。完全不存在 gc 严重的说法哦。测试用例非正常,gc 理解也不对。
每次监听都会创建一个EventDelegateData对象,为啥没用池处理
理一下事件,GameEvent是全局事件,默认是给系统级的使用,只会在初次AddEventListener的时候创建EventDelegateData。移除监听并不会释放EventDelegateData,已经创建过的则不会再创建所以设计师可以不需要用池,属于空间换时间。如果是局部单位大量需要AddEventListener使用ActorEventDispatcher。
感谢解答疑惑