2012-12-05 4 views
1

웹 페이지에 15 개의 iframe이 있습니다.iframe이 닫힌 경우에도 메모리가 해제되지 않습니다.

<iframe id="iframe0" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe> 
<iframe id="iframe1" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe> 
<iframe id="iframe2" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe> 
<iframe id="iframe3" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe> 
<iframe id="iframe4" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe> 
<iframe id="iframe5" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe> 
<iframe id="iframe6" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe> 
<iframe id="iframe7" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe> 
<iframe id="iframe8" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe> 
<iframe id="iframe9" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe> 
<iframe id="iframe10" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe> 
<iframe id="iframe11" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe> 
<iframe id="iframe12" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe> 
<iframe id="iframe13" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe> 
<iframe id="iframe14" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe> 

각 iframe은 .NET에서 방대한 양의 gridview가있는 일부 웹 페이지를 호출합니다. ASP.NET을 사용하여이 페이지를 개발 중입니다. 여기 내 문제가 시작됩니다.

나는 이러한 페이지에 많은 데이터를로드하므로 iexplorer.exe가 성장하고 있다는 것을 알고 있습니다. 때때로 400MB까지 올라갑니다. 하지만 문제는 iframe을 닫아도 ... iframe을 src = about : blank로 만들고 display = none으로 만듭니다. 그러나 iexplorer.exe의 메모리 크기가 내려 가지 않습니다. 메모리를 비우지 않습니다. 어떻게 메모리를 정상적으로 사용할 수 있습니까? 사실 IE8에서 테스트했습니다. 하지만 IE9는 메모리를 해제하는 것 같습니다. 나는 잘 모르겠다.

편집 : 나는하지 않습니다 "닫기"iframe이 숨겨진에 velow로

document.all['iframe' + menuOrder[currentTab]].src = "about:blank"; 
document.all['iframe'+menuOrder[currentTab]].style.visibility="hidden"; 
+0

정말 필요하지 않습니다. 운영 체제에서 다른 용도로 사용하려면 실제 메모리를 확보 할 필요가 없습니다. 가상 메모리는 거의 무제한으로 제공되며 일반적으로 해방 할 가치가 없습니다. 원하지 않는 번호를 보는 것 이외의 실제 문제가있는 경우 그 내용을 알려 주시면 해결하도록 도와 드리겠습니다. –

+1

_ "웹 페이지에 iframe이 15 개 있습니다"_. 죄송합니다. – Madbreaks

+0

@David Schwartz 사실 iexplorer.exe가 너무 많은 메모리를 소비하면 PC가 느려지고 있습니다. 그것이 진짜 문제입니다. –

답변

1

설정 가시성을 iframe을 닫습니다. 비록 당신이 그것을 볼 수 없더라도 그것은 여전히 ​​자원을 소비하고 있습니다. iframe이 빈 페이지에 사용하는 페이지를 변경하면 메모리 사용량을 줄일 수 있습니다.

+0

보시다시피 iframe에 빈 페이지를 설정합니다. –

관련 문제