【已经解决】材质被释放后,cc.loader.cache 中并没有被清除

cocos2dx 3.10 JSB

测试的时候 可能材质用得太多 被释放掉了, 但是在
js里的 cc.loader.cache 并没有被清除掉,
请问这个是要修改源代码 还是说用的姿势不对?

代码如下:
var url = “http://app.ddkids.com/upload/app/storyhouse/release/appstore/list_pics/p” + (Math.floor(Math.random() * 4) + 1) + “.png”;
cc.loader.load(url, function (error, textures) {
if (error) {

            return;
        }

        if (_self.bookData == null || currentBookId != _self.bookData.bookId) {
            return;
        }


        try {
            _self.bookCover.initWithTexture(textures[0]);
        } catch (e) {
            trace("updateUI error:")
            trace(url);
            trace(textures);
            trace(e);

trace(cc.loader.cache);//这个里面还是有这个路径的JS对象,CPP里面的对象应该被清除了。

        }
    });

//错误日志:

{“http://app.ddkids.com/upload/app/storyhouse/release/appstore/list_pics/p1.png":{},“http://app.ddkids.com/upload/app/storyhouse/release/appstore/list_pics/p2.png”:{},“http://app.ddkids.com/upload/app/storyhouse/release/appstore/list_pics/p3.png”:{},"http://app.ddkids.com/upload/app/storyhouse/release/appstore/list_pics/p4.png”:{}}
jsb: ERROR: File /Volumes/data/work/git/storyhouse_v2/dev/frameworks/cocos2d-x/cocos/scripting/js-bindings/auto/jsb_cocos2dx_auto.cpp: Line: 45652, Function: js_cocos2dx_Sprite_initWithTexture
Invalid Native Object
updateUI error:
http://app.ddkids.com/upload/app/storyhouse/release/appstore/list_pics/p3.png
[{}]

测试发现:
cc.textureCache.getTextureForKey(url); 才能正确的拿到这个材质是否真的被释放了。
那么如果我要再继续下载就得自己手动先用这个方法,判断真正的结果,如果没有就从cc.loader.cache删掉,然后再调用下载。。。