蜘蛛侠崩溃:垃圾收集?

时间:2013-06-21 02:26:12

标签: c++ garbage-collection spidermonkey

enter image description here

我有一个使用Spidermonkey的C ++项目(游戏),我无法弄清楚导致错误的原因。

我的对象包含他们初始化的编译脚本,然后在每个帧上更新。

当我让游戏空闲大约30秒时,我的一个包装类会调用终结器(因此试图释放相关的对象)。

一切正常,直到调用终结器,我无法弄清楚它在做什么。在完成时,程序崩溃,因为关联的对象仍然在脚本端尝试释放的本机端使用。例如,玩家获得了自由,这显然是不对的。

文档根本没有帮助我,因为它似乎主要是过时的(但它们不会删除页面上的文本?)。谷歌搜索也没有帮助。我已经尝试在构建JSObject时对其进行生根,但这没有帮助。

有没有人对Spidermonkey垃圾收集器有任何经验?任何人都能说出发生了什么吗?

编辑:如果上面的图片太小,您可以按住Ctrl键将其放大或在新标签中查看。

编辑:我的Spidermonkey版本是从Firefox nightly rev 130468构建的(回购告诉我的是7周大了吗?)。我真的不确定版本号是什么,抱歉。这是最近的。

编辑:我更新到了https://developer.mozilla.org/en-US/docs/SpiderMonkey托管的版本17.0。它没有解决我的GC问题,但最终确定了事情。

0 个答案:

没有答案