大家好,
我正在开发一个Comet JS库。目前我正在跟踪响应文本的大小,并在收到数据块时返回新的部分。这为我的回调函数提供了新的数据,但是会导致明显的内存泄漏。有没有一种方法可以强制关闭XMLHttpRequest对象或定期重置responseText的内容?
request.multi = function(type, handler, url, querystring){
querystring = (querystring == undefined) ? null: querystring;
var response = "";
var handle = makeRequestHandle();
handle.multipart = true;
handle.open(type, url, true);
handle.onreadystatechange = function(){
var return_val;
if(handle.readyState == 4){
m_log.debug("Conection died");
}else if(handle.readyState == 3){
return_val = handle.responseText.substring(response.length);
response = handle.responseText;
handler(return_val);
}else{
m_log.debug("readyState %s", handle.readyState);
}
};
handle.send(querystring);
}