微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何确定我的Google图表数据已从Java内存中删除?

我正在将Google图表用于仪表板Web应用程序,并且需要添加功能以定期刷新页面.

我设置了一些快速代码,这些代码基本上在JS计时器结束时重新提交表单.

    function timerTick() {
        window.setTimeout("timerTick()", 15000);
        document.forms["input"].submit();
    }  

我有一个可以进行Ajax调用获取Json格式数据的表单.

然后,我浏览数据并填充我的Google图表对象.

问题是,浏览器使用越来越多的内存,最终崩溃.

我尝试将所有图表变量都设置为全局,然后在获取新数据之前将它们设置为null,但这仅提供了少量帮助.

我也尝试了以下方法

        $("chart_div").empty();
        $("chart_div2").empty();
        $("chart_table").empty();

只是为了清除DOM中的所有图表数据,但看起来如果没有页面刷新就无法进行垃圾回收.

识别可能的内存占用或使垃圾收集工作更迅速的方法的任何帮助都是很棒的.

先发制人的感谢.

解决方法:

在每个可视化文件调用clearChart方法-该方法应清除每个图表的HTML和事件处理程序.然后,您可以使图表对象无效,并且应该将其垃圾回收.

尽管可视化API在最近的更新中已得到修复,但以前曾发生过内存泄漏.如果这不能解决泄漏问题,则应在此处提交错误报告:code.google.com/p/google-visualization-api-issues/issues/list

将其移到此处,可以将其标记为答案.

由asgallant于12月7日0:36发表评论

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐