2011-01-04 7 views
0

C#을 사용하여 ASP.NET 페이지에서 작업하고 있습니다. 큰 문자열을 출력하는 레이블이 있습니다. 그런 다음 레이블을 삭제하고 큰 문자열을 다시 출력합니다. 브라우저 (Chrome/IE)의 메모리 사용량을 모니터링하고 내 라벨을 지운 후에도 메모리가 계속 올라간다는 것을 알았습니다. 단추가 전체 페이지가 아닌 레이블 만 업데이트하도록이 레이블에 AJAX를 사용하고 있다는 점에 유의해야합니다.JavaScript 메모리 사용 문제 Ajax 및 ASP.NET

예를 들어 약 25MB를 사용하기 시작합니다. 그런 다음 큰 문자열을 레이블에 출력 한 후 약 27MB로 점프합니다. 그런 다음 라벨을 지우고 약 27MB의 용량을 유지합니다. 그런 다음이 프로세스를 반복하면 메모리 사용량이 약 2MB/클릭 씩 계속해서 증가합니다.

이것은 메모리 누수의 명백한 신호입니까, 아니면 AJAX와 관련이 있습니까?

제공되는 모든 의견/링크는 높이 평가됩니다.

+0

브라우저가 Firefox입니까? :) –

+1

브라우저에서 사용하는 메모리 용량은 서버에서 사용하는 언어 나 기술과 관련이 없습니다. 무엇이든, 이것은 자바 스크립트 문제가 아니라 asp.net 또는 C# 문제입니다. –

+0

이와 관련된 AJAX 및 HTML 코드를 공유 할 수 있습니까? 예를 들어, 메모리 누수가 발생할 수 있습니다. Google의 '자바 스크립트 메모리 누수'. 하지만 코드가 정확히 무엇인지 모르는 경우 우리는 그 코드가 맞는지 알 수 없습니다 ... –

답변

1

의견을 보내 주셔서 감사합니다. 매우 도움이되었습니다. 나는 이것을 ajaxified 패널 내부에서 ASP.NET Validator를 사용하여 발생하는 클라이언트 측 javascript 오류로 좁혔습니다. ASP.NET 유효성 검사기는 동일한 오류 메시지를 여러 번 표시하는 유효성 검사 요약과 같은 이상한 결과를 제공하는 패널 내에서 업데이트 될 때마다 다시 등록합니다. 또한 유효성 검사기가 자바 스크립트로 등록되는 방식 때문에 메모리 누수가 발생했습니다.

유효성 검사 오류에 대한 자세한 내용은 여기를 참조하십시오 http://jatindersingh.blogspot.com/2009/03/validationsummary-displayed-multiple.html

0

레이블을 지운 후에 큰 문자열을 참조하는 다른 요소가 페이지에 있습니까? 그렇다면 그것이 기억이 성장하는 이유입니다.