欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java DWR內(nèi)存泄漏問(wèn)題解決方案

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

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

網(wǎng)上查了一下貌似大家都在討論這個(gè)問(wèn)題,之前我也挺老手說(shuō)過(guò)DWR有內(nèi)存問(wèn)題,可是沒(méi)有遇到過(guò)。原來(lái)DWR在間隔調(diào)用這種情況下會(huì)有問(wèn)題!

按照大家的說(shuō)法,修改engine.js配置文件來(lái)解決問(wèn)題,目前我也修改了一下,修改方法如下:

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

內(nèi)有,這樣幾行代碼:

// 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);
}
}

看起來(lái)IE請(qǐng)求Ajax的對(duì)象每次都在創(chuàng)建

而根據(jù)網(wǎng)上的說(shuō)法,IE在創(chuàng)建對(duì)象后,如果這個(gè)頁(yè)面不關(guān)閉(包括不能最小化)時(shí),其創(chuàng)建的對(duì)象是一直不銷毀的。那么無(wú)限制的創(chuàng)建對(duì)象且不銷毀,當(dāng)然會(huì)內(nèi)存泄漏

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

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);
		}
	}
}

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

由于內(nèi)存泄漏時(shí)長(zhǎng)時(shí)間運(yùn)行引起的,目前尚不知該方法是否能解決問(wèn)題。但是從任務(wù)管理器上看,好像有所改善,我們還需要進(jìn)一步測(cè)試。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringBoot?mybatis-plus使用json字段實(shí)戰(zhàn)指南

    SpringBoot?mybatis-plus使用json字段實(shí)戰(zhàn)指南

    在現(xiàn)代應(yīng)用開(kāi)發(fā)中經(jīng)常會(huì)使用JSON格式存儲(chǔ)和傳輸數(shù)據(jù),為了便捷地處理數(shù)據(jù)庫(kù)中的JSON字段,MyBatis-Plus提供了強(qiáng)大的JSON處理器,這篇文章主要給大家介紹了關(guān)于SpringBoot?mybatis-plus使用json字段的相關(guān)資料,需要的朋友可以參考下
    2024-01-01
  • idea創(chuàng)建SpringBoot項(xiàng)目時(shí)Type選maven?project和maven?pom有何區(qū)別

    idea創(chuàng)建SpringBoot項(xiàng)目時(shí)Type選maven?project和maven?pom有何區(qū)別

    Maven是一個(gè)Java工程的管理工具,跟其相同功能的工具如Gradle,下面這篇文章主要給大家介紹了關(guān)于idea創(chuàng)建SpringBoot項(xiàng)目時(shí)Type選maven?project和maven?pom有何區(qū)別的相關(guān)資料,需要的朋友可以參考下
    2023-02-02
  • Java實(shí)戰(zhàn)之基于swing的QQ郵件收發(fā)功能實(shí)現(xiàn)

    Java實(shí)戰(zhàn)之基于swing的QQ郵件收發(fā)功能實(shí)現(xiàn)

    這篇文章主要介紹了Java實(shí)戰(zhàn)之基于swing的QQ郵件收發(fā)功能實(shí)現(xiàn),文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)java的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-04-04
  • Knife4j的請(qǐng)求示例當(dāng)中有很多空白行的問(wèn)題解決辦法

    Knife4j的請(qǐng)求示例當(dāng)中有很多空白行的問(wèn)題解決辦法

    這篇文章主要介紹了Knife4j的請(qǐng)求示例當(dāng)中有很多空白行的問(wèn)題解決辦法,按正常來(lái)說(shuō)不應(yīng)該有上方的空白,當(dāng)然如果只是查看我也不至于非要解決他,主要是假如接口是json傳參,調(diào)試界面都沒(méi)辦法修改參數(shù),遇到同樣問(wèn)題的同學(xué)可以參考閱讀本文
    2024-09-09
  • java8日期工具類封裝的實(shí)戰(zhàn)記錄

    java8日期工具類封裝的實(shí)戰(zhàn)記錄

    java time包中的是類是不可變且線程安全的,新的時(shí)間及日期API位于java.time中,下面這篇文章主要給大家介紹了關(guān)于java8日期工具類封裝的相關(guān)資料,需要的朋友可以參考下
    2021-09-09
  • 詳解Mybatis中的select方法

    詳解Mybatis中的select方法

    這篇文章主要介紹了Mybatis的select方法,通過(guò)代碼給大家詳細(xì)介紹了selectByExample方法,selectById方法,需要的朋友可以參考下
    2018-07-07
  • Java形參和實(shí)參的實(shí)例之Integer類型與Int類型用法說(shuō)明

    Java形參和實(shí)參的實(shí)例之Integer類型與Int類型用法說(shuō)明

    這篇文章主要介紹了Java形參和實(shí)參的實(shí)例之Integer類型與Int類型用法說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-10-10
  • 解析Oracle數(shù)據(jù)庫(kù)中的對(duì)象集合schema

    解析Oracle數(shù)據(jù)庫(kù)中的對(duì)象集合schema

    這篇文章主要介紹了Oracle數(shù)據(jù)庫(kù)中的對(duì)象集合schema,是Oracle數(shù)據(jù)庫(kù)入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-11-11
  • SpringBoot自動(dòng)配置原理分析

    SpringBoot自動(dòng)配置原理分析

    這篇文章主要介紹了SpringBoot自動(dòng)配置原理分析,SpringBoot是我們經(jīng)常使用的框架,那么你能不能針對(duì)SpringBoot實(shí)現(xiàn)自動(dòng)配置做一個(gè)詳細(xì)的介紹。如果可以的話,能不能畫一下實(shí)現(xiàn)自動(dòng)配置的流程圖。牽扯到哪些關(guān)鍵類,以及哪些關(guān)鍵點(diǎn)
    2022-08-08
  • servlet異步請(qǐng)求的實(shí)現(xiàn)

    servlet異步請(qǐng)求的實(shí)現(xiàn)

    本文主要介紹了servlet異步請(qǐng)求的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07

最新評(píng)論