jQuery .getJSON()轮询内存泄漏

时间:2018-05-12 18:10:06

标签: javascript jquery flask memory-leaks

我有一个显示一些统计数据的仪表板,直到现在它还是非常静态的,即如果我想要一个新数据,我必须刷新页面。我已经使用jquery以更动态的方式在一个间隔上加载统计信息。它工作得很好,我不再需要刷新页面了。

但是,我注意到,如果我让页面打开一段时间,内存使用率会上升,而且没有停止的迹象。 它从大约50MB开始,然后在几个小时内(可能只有1个)看到它达到1.2GB。刷新页面不会回收内存!

明显的问题是......我做错了什么?

样品:

@app.route("/getstats")
def getstats():
    return jsonify({'data': render_template('stats.html', stats=stats())})


<script type="text/javascript">
    $(function poll() {
        var isMenuClosed = document.querySelector('.mdl-menu__container.is-visible') == null;
        if (isMenuClosed) {
            $.getJSON('/getstats',
                function(data) {
                    $("tbody#stats").empty().append(data.data);
                    componentHandler.upgradeDom();
                });
            $.getJSON('/getwidgets',
                function(wdata) {
                    $("div#widgets").empty().append(wdata.data);
                });
        }
        setTimeout(poll,5000);
        return false;
    }); 
</script>

我对Python,特别是JavaScript的知识非常有限。

0 个答案:

没有答案