关于垃圾回收CollectGarbage()的使用

网络上流传的关于JS释放内存的方式~大概就是只说过。将变量使用以后设置为null,但是IE的GC是当鼠标点击最小化按钮时发生~~也就是说我们从程序上看已经释放了内存其实之前更本没有释放~~~研究jsvm的时候,发现js.lang.System里面定义了gc()方法System.gc=function(){  if(System.isIeBrowser())  {…

大家好,又见面了,我是你们的朋友全栈君。

网络上流传的关于JS释放内存的方式~ 大概就是只说过。将变量使用以后设置为 null,但是IE的GC是当鼠标点击最小化按钮时发生~~ 也就是说我们从程序上看已经释放了内存其实之前更本没有释放~~~

研究 jsvm 的时候,发现 js.lang.System 里面定义了 gc() 方法

System.gc = function ()
{

  if (System.isIeBrowser())
  {

    CollectGarbage();
    setTimeout(“CollectGarbage();”, 1);
  }
}

CollectGarbage() 好像是ie特有的一个函数,为什么通过setTimeout的方式调用,可能是防止上下文中的过程变量仍然有效的原因吧!

==============================================================================

可以在自己代码如此写:

// 每隔 10 秒释放一次内存
window.setInterval(“CollectGarbage();”, 10000);

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/126124.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 经纬度与距离的换算关系图_经纬度对应距离

    经纬度与距离的换算关系图_经纬度对应距离一、经纬度距离换算a)在纬度相等的情况下:经度每隔0.00001度,距离相差约1米;每隔0.0001度,距离相差约10米;每隔0.001度,距离相差约100米;每隔0.01度,距离相差约1000米;每隔0.1度,距离相差约10000米。b)在经度相等的情况下:纬度每隔0.00001度,距离相差约1.1米;每隔0.0001度,距离相差约11米;…

    2022年9月2日
    2
  • Spring学习—生成图片验证码

    今天想学下一下验证码的生成,就之前搭建好的一个spring框架上写了一个demo,我会贴出细节代码,但是spring的配置就不在介绍了。需要完整代码可以联系我! 会从前台页面到后台实现完整的讲解: 1:前台的代码,image.jsp<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="U

    2022年2月25日
    45
  • python 数组转换为字典_char转换为string

    python 数组转换为字典_char转换为string先看下join函数:语法为:str.join(sequence)sequence–要连接的元素序列实例一:连接字符串str1=’-‘seq=(“a”,”b”,”c”)printstr1.join(seq)实例二:连接数组(数组元素为字符串)str2=’*’seq2=[“a”,”b”,”c”]printstr2.join(seq2)

    2022年10月9日
    0
  • Server unexpectedly closed network connection的解决

    Server unexpectedly closed network connection的解决(1)apt-getremoveopenssh-server(2)sudoaptinstallopenssh-server(3)sudoservicesshstart(4)ps-aux|grepssh(5)sudoaptinstallopenssh-client(6)工具重连…

    2022年10月21日
    0
  • 如何查看端口号被占用情况_怎么查端口被哪个程序占用了

    如何查看端口号被占用情况_怎么查端口被哪个程序占用了最近在工作上Ranorex自动化测试工具老是连不上服务器,经检查发现服务器的端口号(7266)被其他测试工具占用。可以在命令窗口上输入netstat-ano查看本机的所有端口号以及对应的进程占用程序(PID)。打开任务管理器,找到与端口对应的PID,将其关闭,最后重启。…

    2022年7月27日
    1
  • SplitContainer的使用

    SplitContainer的使用作用:(Splitter的简化)使用 SplitContainer 控件可分隔容器(如 Form)的显示区域,并使用户可以调整已添加到 SplitContainer 面板中的控件的大小。当用户将鼠标指针移到拆分器上时,光标将发生变化,以指示可以调整 SplitContainer 控件内部的控件的大小。SplitContainer 也使设计时的控件放置更容易。例如,若要创建一个与Win

    2022年7月18日
    21

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号