火狐浏览器爆内存溢出

来源:互联网 发布:苹果铃声剪切软件 编辑:程序博客网 时间:2024/05/29 14:32

最近一直在做一个项目,项目中使用到了webSocket,使用过程中遇到一个问题,简单描述一下

以下是一些代码片段:

webSocket.onopen = function() {
//webSocket打开时要做的一些事情
 };
 webSocket.onmessage = function(event) {
//webSocket接收到一些消息时,要做的一些事情       
 };
 webSocket.onclose = function(event) {
//webSocket连接断开时要做的一些事情
 };

onclose是一个监听事件,当连接断开时,需要做一些要做的事情。

然后我在onclose里面调用了其他一些js函数,本来这些都是正常的。

现在我需要频繁刷新浏览器,只要一刷新,webSocket就会断开,就会触发onclose,这个时候就会执行里面的代码;浏览器刷新会销毁页面的数据,导致onclose执行时找不到需要的数据,这个时候就会爆“内存溢出”,而且这个“内存溢出”指定不到具体代码;接着我就注释掉onclose中的代码,频繁刷新就不会出现这个问题了。

就这么多了,差不多就是这个意思:浏览器内存中的数据已被销毁,但是你却仍然要调用,那么就会出现“内存溢出”的情况



0 0
原创粉丝点击