javascript - ajax轮询导致浏览器内存每次递增
我想大声告诉你
我想大声告诉你 2017-05-24 11:33:53
0
4
753

ajax轮询导致浏览器内存每次递增,我也查过相关资料,有说在complete中

完整ajax代码:

    var Timer_getlastLog,ajax_flag;
    Timer_getlastLog = setInterval(function () {
        if(ajax_flag==true){
            getLastLog(lastMsgId);
        }
    }, 1000);
    function getLastLog(msgid) {
        ajax_flag = false;
        $.ajax({
            type: 'post',
            dataType: 'json', 
            url: 'url.html', 
            data: {msgid: msgid}, 
            success: function (a) {
                //此处省略其他的业务逻辑
                lastMsgId=a.msgid;
                ajax_flag = true;
            },
         
        });
    }    

像这样,但是 内存开销还是一直在增加,

现在都已经快跑了2个G了。不知道有什么解决办法吗?暂时不考虑 socket。

补充:
1.我服务端,用的TP框架,然后有考虑过给一个while (true) 再给一个sleep(1);但是这样导致,反复刷新页面后,apache的内存开销大增,产生拥堵,页面无法正常加载显示。这点也让我很头疼。

2.我是参考了 http://blog.csdn.net/mlx212/a... 这篇文章对此代码的业务上的修改,不影响逻辑。

我想大声告诉你
我想大声告诉你

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!