异步加载中切换场景应对策略

在当前界面还有东西在加载的时候,用户跳到另一个界面,原来的界面已经被销毁了。 有什么好的策略应对这种情况吗? 难道都在加载回调里判断父节点还在不在吗 ?

这种异步的操作理论上说最好是要判断父节点还在不在的,有时候不仅节点要判断,脚本也要判断

我一般采用两种方式:
1.复杂点的游戏,严格判断父节点状态;
2.简单游戏,在当前节点增加监听,onDestroy里移除监听,异步完成后回调里发送相应通知

灵魂拷问

  • node.destroy() 做了什么
  • node.destroy() 之后,我继续持有这个 node 会导致内存泄漏吗
  • node.destroy() 之后,我加载任务还需要20s才会回调 onComplete ,onComplete 里面调用 isValid(node) 有问题吗,毕竟我可是在node.destroy() 之后,整整持有了 20s 这个对象,会影响他的内存释放吗?
  • node.destroy() 之后,我加载任务还需要20s才会回调 onComplete ,onComplete 里面调用完 isValid(node) 之后,我还需要对它释放吗

请指教 :grinning: