关于setTimeout 和setInterval 的內存清理,这是一个问题

admin

写了一个调用百度和搜搜了热点新闻的页面使用的getjson,程序调用的xml生成的jsonp数据.这是背景!

我使用了setTimeout来实现1分钟刷新一次页面!页面中有两个setTimeout,而且以后可能会有更多,这样会造成页面非常的卡,怎样才能将setTimeout产生的内存清理掉,谷歌了一下在csdn上找到了一篇文章是这样处理内存的,如下:

隔5秒清除一个settimeout

function ajax_loadTable(){ //中间还有很多代码
if(settimeout_id!=null && settimeout_id!="") { clearTimeout(settimeout_id); //清除settimeout函數產生的內存消耗. } settimeout_id=setTimeout("ajax_loadTable()",5000); //設置自動刷新.
}

这个是清理IE内存垃圾的

$(doucment).ready(function(){
if(isIE){CollectGarbage("collect");} //清除運行之前的內存.
  // 每隔 10 秒释放一次内存
if(isIE){window.setTimeout("CollectGarbage();",5000);}
ajax_loadTable();
});

但是我并不确定这样是否能清理内存?有知道的朋友么,mail我,怎样能检测内存的释放以及清理!

学习中...

 

 

评论已关闭