当前位置: 首页>前端>正文

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

网络上流传的关于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://www.xamrdz.com/web/2ta1964307.html

相关文章: