jsbindings: Failed to remove proxy for native object: 6779BD20, force removing it, but it may cause memory leak
不知道什么原因导致的呢,更新到1.3的版本后运行游戏时总是出现这个提示(非报错),想知道可能的原因有哪些,烦请解惑
这个 warning 目前可以忽略,这是新的内存模型中一个用于调试的提示,在后面版本中我会把这个 warning 提高到 COCOS_DEBUG = 2 才显示。
这个 warning 的本质是:
- 一个 Native 对象被绑定到一个 JS 对象上,引擎会创建一个双向索引的 proxy
- Native 对象被释放了(JS 对象并没有,这只在某些非 Ref 类型对象或者事件对象才有可能发生)
- 一个新的 Native 对象被创建在同一个内存地址上
- 这个新的 Native 对象需要被绑定到一个新的 JS 对象上,此时会发现之前的 proxy 还存在,所以需要先删除旧的 proxy,再创建新的。
在第四步中,我们并不知道旧的 proxy 中指向的 JS 对象有没有被释放,所以发出这个警告,实际上绝大多数情况下这都没有关系。除非你的游戏出现崩溃了或者不正常的内存问题了,才需要去调整 COCOS_DEBUG 预编译宏为 2,然后通过 log 来定位可能有问题的对象,此时这个 warning 可能会有帮助。
总之目前绝大多数情况下这个 warning 都出现在事件对象被绑定的过程中,不需要在意
现在是,我把游戏里所有node的destroy事件全部替换成为隐藏节点不会有这个报错(也没有出现闪退,跑的还算蛮久);
因为我现在游戏会出现闪退(模拟器),而且无任何报错,只有这个警告,但并不是这个警告出现的时候才闪退,所以在找这个问题,之前有注意到过电脑加速球的确占用的比较厉害,但是游戏中我有对所有运动的节点都做了销毁,所以我现在想不通是哪里出了问题,求助
补充:多次测试,依然闪退,但是加速球的的数字没有上升(1:不知道之前是不是因为我的其他软件导致,2:跑的时间并没有多久就崩了)
你现在用的版本是?1.3.0 存在闪退的问题,需要升级到 1.3.1
升级到1.3.1,问题依然在(附:升级版本是覆盖安装)
多次测试:
不管我的脚本有没有更改(节点的处理方式为隐藏/删除),这个警告都会报,
但隐藏的方式游戏没有闪退(测试了多次),删除的方式闪退(十次以上,其中有一次出现报错框,但是不小心点掉了,后面测试了几次都没出现,所以具体是什么也不清楚,有一次出现这个警告,如下:)
我把软件卸了,重新安装的1.2.2版本,不崩溃了。。。。
我的资源加载全是手动拖到属性栏的,全用destroy销毁(包括后面cc.instantiate()出来的资源),所有的预制资源都在这
我的在电脑上跑的时候(1.2.2版本)帧率基本维持在55+到60+,但偶尔会出现40+;场景整个过程也不流畅。
手机上跑的时候,甚至出现了20+,整个卡死,但不是稳定出现,(粗略测的几次)实在是不想玩了。。。。
做的一个小游戏,所有资源一共才24M,现在我该怎么办呢,
-
你在升级之后,是否将 1.3.0 的 build 文件夹删除并重新 build ?如果没有的话, 1.3.1 的升级是不生效的,如果有的话,那麻烦把崩溃时的 log 或者现场调用栈发出来
-
打包到手机运行的时候有没有选择 release 模式?
-
运行的情况跟资源的体积没有关系,需要分析性能热点在哪里,你的游戏有没有在 web 端跑过?性能情况如何?
1、升级之后在这个引擎上跑就崩溃了;你说的崩溃时的log是手机平台运行的log吗?
2、
3、我知道资源体积跟这没关系,只是想说不知道哪里出了问题。现在在web版本跑了四遍,帧频基本维持在60,偶尔有微小波动,整个过程很流畅,画面也不卡;creator模拟器上开始维持在60,越跑越低,跑的久一点就卡的不行了,角色都跳的只有设定的一半高(现在测试使用的引擎版本是1.2.2,没有出现崩溃情况)
我再升级到最新版试试,以防止我没有删Build资源。
N分钟后。。。。
在上面的回复之后,我更新到了最新版本,没有崩溃(测试了几次),开始游戏后帧频就低于60了,画面很卡,不流畅,继续跑了一会就开始维持在50以下了,越跑越低啊(测试v1.3.1引擎),我的游戏是跑酷类的游戏,游戏运行过程中会不停的创建节点,同时也会不停的销毁节点。web版本测试了一次,跟上述一样,基本保持60帧,画面流畅。
11.14测试,出现崩溃
我估计你的游戏中有大量的内存泄漏,可以检测一下内存的使用状况吗?另外,看看 draw call 会不会越跑越高?
建议使用 Xcode / Visual Studio 进行调试,安卓上比较难调试
draw call怎么查看啊
搜到一堆帖子都是unity的,cocos creator不知道怎么查看啊,求提示

