游戏中经常会遇到一些timer,比如过多少秒之后,需要干某件事情,比如播放特效,播放timeline等等。
问题就在延迟这段时间,会发生一些事情,比如:
1.断线了
2.切场景了
等等
举例1:比如切场景了,那么切场景之后,这个timer触发事件了,播放了一个特效。
此时你会看到,新场景里有个特效,这就很奇怪。返回到之前的场景,发现特效还在。
问题就在于,切场景之后,这个timer是否要清掉,这很关键。
举例2:比如断线了,那么断线之前,我们要在2秒之后,播放timeline。
当断线重连之后,发现服务器同步过来的信息,timeline状态和本地不一样了,而本地的timeline照旧播放,也会引起各种问题。
所以,综上,要特别注意timer在切场景、断线、切账号、返回登录界面之后,这些timer是否还在继续工作。这个问题有时候很难查,需要很小心。