子域频繁刷新的卡顿问题总结

需求:微信小游戏项目中有一个即时的排行榜,可以显示排名比我高的一个好友信息。

问题:该需求需要把玩家的即时分数post给子域,子域进行渲染,主域update更新。由此造成了游戏内播放动画的卡顿,掉帧也很严重。

优化过程:
①一开始以为是update造成的性能消耗,后调整为5s刷一次,效果不明显。
②后来把子域做了优化,排名不变不渲染,效果也不是很明显。
③最终发现卡顿的主要原因在postMessage……

解决方式:
每次需要更新分数时,把postMessage延迟1s(该时间为了播放动画)再执行,完美流畅运行

1赞

nice,不过个人觉得不是postmessage造成的吧,是主域和子域一起绘制引起的?纯猜测。。

这个情况我也进行了测试,postmessage之后不绘制,也是一样的卡。最后只能归结为postmessage引起的了。具体的原因并不知晓。。。