0

Internet Explorer에서 메모리 누수 문제를 해결하고 있습니다. 이것은 대형 화면에 표시되고 자바 스크립트 window.location.reload();을 사용하여 30 분마다 새로 고쳐지는 단일 페이징 응용 프로그램입니다. 새로 고침 후 메모리 크기는 계속 증가합니다. 응용 프로그램에서 페이지 누수가 의심됩니다. 여기에 대해 자세히 알아보십시오. https://msdn.microsoft.com/en-us/library/bb250448(v=vs.85).aspx Javascript memory leak on page refresh; remedy?window.location.reload (true)가 Internet Explorer 메모리에 저장된 javascript 객체에 영향을 줍니까?

https://github.com/webcomponents/webcomponentsjs/issues/541

하지만 제가 눈치 내가 window.location.reload(true); 즉에 코드를 변경하면 새로 고침 메모리 사용되었다 정상이며 어떤 메모리 누수가 없다. 내가 window.location.reload() 그것이 내가 window.location.reload(true)이 아니라 얻을 사용하고 때 동안 캐시 자바 스크립트를 사용하는 것보다 다른, 인터넷 익스플로러는 인터넷 익스플로러 메모리의 이전 페이지에서 누출 된 자바 스크립트 개체를 유지한다는 것이다을 사용하고 때

지금 제 질문은 자바 스크립트 파일의 최신 복사본은 이전 페이지의 인터넷 탐색기 메모리에있는 유출 된 개체를 지 웁니다. 요컨대, 페이지의 하드 새로 고침은 해당 페이지와 관련된 Internet Explorer 메모리에 저장된 유출 된 객체에 영향을줍니다. docs에서

+0

그냥 게시 한 것으로 판단하면 하드 새로 고침이 누출 된 개체에 영향을주는 것처럼 보입니다. 당신이 거의 자신의 질문에 대답 한 것처럼 보입니다. –

답변

0

:

forcedReload 옵션 는 해당하는 경우, 페이지가 항상 서버에서 다시로드되도록, 부울 플래그입니다. 거짓 이거나 지정되지 않은 경우 브라우저는 해당 캐시에서 페이지를 다시로드 할 수 있습니다.

페이지가 서버에서 강제로 다시로드되면 메모리의 모든 페이지 별 개체가 파괴됩니다.

0

질문 제목에서 언급 한 JavaScript 객체가 포함 된 메모리의 모든 페이지 별 리소스를 삭제해야합니다. 동작은 다음과 같이 MDN에 문서화되어 있습니다.

window.location.reload (forcedReload);

forcedReload는 해당하는 경우, 항상 서버에서 다시로드 할 페이지가 발생, 부울 플래그입니다. false이거나 이 지정되어 있지 않으면 브라우저가 해당 캐시에서 페이지를 다시로드 할 수 있습니다.

그러나 IE 9는 질문 된 here과 같은 문제에 문제가있을 수 있습니다.