Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flash 调试闪存堆栈溢出_Flash_Actionscript 3_Debugging_Actionscript_Flexbuilder - Fatal编程技术网

Flash 调试闪存堆栈溢出

Flash 调试闪存堆栈溢出,flash,actionscript-3,debugging,actionscript,flexbuilder,Flash,Actionscript 3,Debugging,Actionscript,Flexbuilder,我有一个由第三方swf加载的swf。我有源代码并重新编译我的swf,但没有第三方swf的代码 可能在我的代码中,某个地方出现了堆栈溢出。在调试flash player中,当溢出发生时,我会看到一个带有堆栈跟踪的弹出对话框: Error: Error #1023: Stack overflow occurred. at Object$/Object::_hasOwnProperty() at Object/http://adobe.com/AS3/2006/builtin::has

我有一个由第三方swf加载的swf。我有源代码并重新编译我的swf,但没有第三方swf的代码

可能在我的代码中,某个地方出现了堆栈溢出。在调试flash player中,当溢出发生时,我会看到一个带有堆栈跟踪的弹出对话框:

Error: Error #1023: Stack overflow occurred.
    at Object$/Object::_hasOwnProperty()
    at Object/http://adobe.com/AS3/2006/builtin::hasOwnProperty()
    at Object$/Object::_hasOwnProperty()
    at Object/http://adobe.com/AS3/2006/builtin::hasOwnProperty()
    at Object$/Object::_hasOwnProperty()
64行代码都是这样的。但是,看起来我只看到了最后64个堆栈帧,而不是整个堆栈跟踪

有没有办法查看完整的堆栈跟踪?作为替代方案,是否有办法限制堆栈深度

我花了一整天的时间试图调试这个,但是我运行的信息很少,而且缺少工具。以下是我尝试过的:

  • 将我的代码连接到调试器。这是运行在虚拟机内部windows中的flash 9.0.28,连接到虚拟机外部运行的flex builder。它看起来是连接的,但我没有得到跟踪语句,断点也不会触发
  • 将日志行发送到http服务器。这是可行的,但我怀疑我错过了溢出/服务器崩溃之前的最后n个堆栈帧
  • 一种盲的、二进制搜索类型的方法禁用部分代码-这很慢,但可能会起作用

我还应该尝试其他策略吗?

听起来像是同样的问题吗?很抱歉,这不是关于如何进一步调试的直接答案,而是指向有类似问题并找到解决方案的人的指针。

Flex Builder调试器的较新版本不再与Flash Player 9.0.28完全兼容。我相信您需要9.0.115或更高版本。您链接到的页面隐藏在注册墙中。其他地方也有同样的信息吗?因为现在,他们的注册服务器关闭了,和大多数开发人员一样,我宁愿现在就修复我的bug!