预加载场景 部分资源释放 渲染异常

有 场景 A B C ,A与B 都勾选了"自动释放资源"
A与B场景同时用了资源res_0。
在C场景 时
1、预加载A场景
2、跳转B场景
3、跳转到A场景
此时 由于 res_0 被释放 ,A场景渲染res_0资源失败
Uncaught TypeError: Cannot read property ‘__ONCE_FLAG:load’ of null
at cc_SpriteFrame.190.proto.hasEventListener (callbacks-invoker.js:119)
at cc_SpriteFrame.115.proto.once (event-target.js:184)
at cc_Sprite.onEnable (CCSprite.js:445)
at cc_Sprite.onEnable (CCClass.js:778)
at CCClass.invokeOnEnable [as _invoke] (component-scheduler.js:307)
at CCClass.invoke (component-scheduler.js:154)
at CCClass.activateNode (node-activator.js:228)
at cc_Scene._activate (CCScene.js:111)
at 41.cc.Director.runSceneImmediate (CCDirector.js:467)
at CCDirector.js:658

这个问题需要你自己管理,因为资源被两个场景同时引用,引擎释放目前并是不考虑其他场景的引用情况。

预加载的场景 能手动释放吗?

cc.Scene 会持有一个 dependAssets,cc.Scene 销毁后,你可以试试 cc.loader.release 这个对象。

预加载的场景 对象 可以获取到吗?

现在 主要的问题是:
在C场景 start 中 预加载了A场景 , 但此时从C跳转到了B,再从B跳转到了C(此时应该会重新预加载A场景),再跳转到A场景 会渲染异常。 所以想着,先把第一次预加载A场景的缓存删掉

最后怎么解决的这个问题