这是bug吗?3.6.1Bundle资源release后无法再次加载

第一次加载有效,执行了destroy,同时调用了bundle的release函数。

第二次加载无效,打印了123。

如果不是bug,怎么恢复这个资源呢?


想传入扩展参数reloadAsset又不允许

@215194780

额,有完整的代码不?

我的assetmanager没有做其他处理,就是加载bundle,然后用bundle加载资源,然后destroy,然后再次加载该bundle的这个资源,然后加载到的资源是已经销毁了的资源

看了源码是有缓存,我又无法传入reloadasset状态控制重新加载,所以。。。

我现在下班了:grinning:,源码明天才有,不过你可以按我说的试试,就是简单的加载和释放

image

执行两次这个test2函数,第二次打印123,想知道的是怎么恢复这个资源,或者重新加载

@muxiandong

资源release的时候已经被标记destroy的了,这里就不会从shared的assets缓存中去掉,下次又加载了这个废物资源

@muxiandong @215194780

image

调整一下调用顺序就好了。。。还得把源码翻遍才能解决,不过感觉底层这里是不是得完善一下,已经destroy的资源你还放缓存中有啥用。。。

改成这样子

调用assetManager.releaseAsset和调用bundle.release一样,问题在于我这里destroy了这个资源