网站停止使用Chrome版本32

时间:2014-01-17 18:19:46

标签: javascript flash google-chrome

我是一家大型企业网站的开发人员,在升级到chrome 32之后,网站完全停止了工作。我得到'aw snap'关于我们必须渲染页面上的大部分元素的时间。

它是一个巨大的代码库,所以我无法找到导致它的原因。我一直在调试模式下启动chrome并在那里看日志。

奇怪的行为:

1)如果我禁用闪存它可以工作,我们使用带闪存库的swfobject。

2)我有时会在日志中看到它崩溃时“Uncaught RangeError:超出最大调用堆栈大小”,所以我必须有一个无限循环,但它并不总是这样。

3)如果我足够刷新它将一直启动,并且工作正常,直到我杀死标签并重新开始。但有一次,这有时会导致它在几次刷新后再次启动崩溃周期。

4)我有时会看到错误“file_descriptor_set_posix.cc(22)] FileDescriptorSet被破坏了未使用的描述符”我认为这与网页呈现中的无限循环有关,这与最大调用堆栈超出错误有关。< / p>

有没有人知道Chrome版本32中哪些内容发生了变化,这是找到错误的良好起点?

使用的库:SWFobject,Backbone,下划线,soundmanager.js

2 个答案:

答案 0 :(得分:4)

我不知道为什么修复它,或者什么chrome改变导致代码中断,但如果有人对我们所做的解决错误感兴趣,我会解释。

1)我将所有事件都从swfobject中删除,我们的swf代码直接转到我们必须与flash连接的Flash.js类。在它通过Backbone.dispatcher传播到flash类之前。这导致了aw snap错误消失。

2)我们使用的是名为Moment.js 2.2.0版的日期时间库。这是抛出最大调用堆栈错误的那个,在更新到2.3.0后停止了。很想知道什么是铬改变导致无限循环。

如果有人知道导致两种错误的两个版本之间的铬变化的信息,我会喜欢这个答案,因为它有点可怕修复症状但不知道原因。

答案 1 :(得分:1)

chrome将在任务管理器中打开多个任务,并且它对许多插件敏感

尝试以下

1-转到chrome中的设置 2-开放扩展 3-禁用所有可以扩展的扩展 4-闭合铬 5-在Windows中打开任务管理器 6-进入流程 7-关闭与chrome相关的所有流程 8-重新打开镀铬并再次检查问题