最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java DWR內存泄漏問題解決方案

 更新時間:2020年10月16日 11:00:48   作者:cuisuqiang  
這篇文章主要介紹了Java DWR內存泄漏問題解決方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

機器跑了一晚上,發(fā)現(xiàn)有崩潰現(xiàn)象,由于頁面內有動態(tài)繪圖功能,我懷疑是繪圖原因,但是今天上午有人提醒我才想到,是不是間隔調用時DWR產(chǎn)生了內存泄漏問題?

網(wǎng)上查了一下貌似大家都在討論這個問題,之前我也挺老手說過DWR有內存問題,可是沒有遇到過。原來DWR在間隔調用這種情況下會有問題!

按照大家的說法,修改engine.js配置文件來解決問題,目前我也修改了一下,修改方法如下:

dwr.engine._sendData = function(batch) {}

內有,這樣幾行代碼:

// Get setup for XMLHttpRequest if possible
if (batch.rpcType == dwr.engine.XMLHttpRequest) {
if (window.XMLHttpRequest) {
 batch.req = new XMLHttpRequest();
}
// IE5 for the mac claims to support window.ActiveXObject, but throws an error when it's used
else if (window.ActiveXObject && !(navigator.userAgent.indexOf("Mac") >= 0 && navigator.userAgent.indexOf("MSIE") >= 0)) {
 batch.req = dwr.engine._newActiveXObject(dwr.engine._XMLHTTP);
}
}

看起來IE請求Ajax的對象每次都在創(chuàng)建

而根據(jù)網(wǎng)上的說法,IE在創(chuàng)建對象后,如果這個頁面不關閉(包括不能最小化)時,其創(chuàng)建的對象是一直不銷毀的。那么無限制的創(chuàng)建對象且不銷毀,當然會內存泄漏

目前我改了一下,如下面代碼:

var httprequest = null;
// Get setup for XMLHttpRequest if possible
if(null==httprequest){
	// Get setup for XMLHttpRequest if possible
	if (batch.rpcType == dwr.engine.XMLHttpRequest) {
		if (window.XMLHttpRequest) {
			httprequest = new XMLHttpRequest();
		}
		// IE5 for the mac claims to support window.ActiveXObject, but throws an error when it's used
		else if (window.ActiveXObject && !(navigator.userAgent.indexOf("Mac") >= 0 && navigator.userAgent.indexOf("MSIE") >= 0)) {
			httprequest = dwr.engine._newActiveXObject(dwr.engine._XMLHTTP);
		}
	}
}

就是說第一次創(chuàng)建,之后不再創(chuàng)建,相當于單例模式。

由于內存泄漏時長時間運行引起的,目前尚不知該方法是否能解決問題。但是從任務管理器上看,好像有所改善,我們還需要進一步測試。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

最新評論

措勤县| 永平县| 高淳县| 互助| 新安县| 新晃| 平山县| 高台县| 金秀| 宁夏| 阳泉市| 富源县| 固阳县| 天全县| 精河县| 苏州市| 调兵山市| 昌平区| 遵义市| 双辽市| 开江县| 贺州市| 徐水县| 六安市| 黄浦区| 丰都县| 东平县| 龙江县| 府谷县| 桑日县| 桂东县| 寿阳县| 贵州省| 兴隆县| 礼泉县| 新干县| 凌源市| 关岭| 凤台县| 旬邑县| 和林格尔县|