let bundle = assetManager.getBundle(“game”);
bundle.load(“prefab/game1”, Prefab, (err, prefab) => { });
弱弱的问一下 这个代码执行多了会造成内存泄漏吗 只执行没去用它 只是为了下次某某地方加载不用耗时
let bundle = assetManager.getBundle(“game”);
bundle.load(“prefab/game1”, Prefab, (err, prefab) => { });
弱弱的问一下 这个代码执行多了会造成内存泄漏吗 只执行没去用它 只是为了下次某某地方加载不用耗时
内存泄漏是指比如:程序运行中你打开一个二级界面内存增加了4kb关闭后不减少并且再次打开又增加了4kb。「关闭之后再次打开又增加了4kb」这很重要因为有的小游戏就不能做内存释放增加了就增加了只要保证再次打开不再次增加内存就可以。所以综上所诉但看你这一段代码只是使程序在使用期间内存又高了一点
不会dddddd
首先要理解,creator的资源加载原理
一个prefab加载, 如果没勾选延迟加载, 那麽cc就会把prefab数据, prefab引用的图片资源都加载。
当加载好后会把资源放到cc.assetManager.assets._map里面, 下次再调用加载代码也会优先从cc.assetManager.assets._map取出。
而在加载过程中再调用同资源的加载, 由于cc使用pipeline方式处理 ,也就是説其实是把加载都收束到一个模块里,只注册了加载完成时的回调。所以就算for 100次加载, 都是加载同一份文件, 占用的内存也只有一份, 不会变成100份,但如在加载的preset参数添加了cacheAsset:false 就不一定了
牛逼克拉斯 有没有类似cocos Inspector插件的节点树预览 直接能知道该项目都占用了哪些内存
chrome的任务管理器不是更直观吗? gpu 内存都能展示
