나는 하루 종일 이미 검색을했기 때문에 서버에 많은 ajax-jsonp 요청을 사용하는 내 phonegap 애플리케이션에서 큰 메모리 누수가 발생하는 이유를 찾을 수 없다.JSONP Ajax Call with JQuery가 메모리 누수를 야기한다.
따라서 가장 간단한 예를 들었습니다. 당신은 그것을 here on jsfiddle 찾을 수 있습니다.
그것의 주요 내용은 다음과 같습니다
function run(){
$.ajax({
dataType: 'jsonp',
url: "http://thawing-bayou-7281.herokuapp.com/test.js",
success: function (res) {
// some stuff here
setTimeout(run, 250);
}
});
};
run();
그래서이 코드는 JSONP API 요청 끝없는 시간 250ms마다 호출합니다.
참고 : 나는 이것이 결코 구현되지 않을 것이라는 것을 알고 있습니다. 그냥 메모리 누수를 탐지하기위한 것입니다.
이 예제를 실행하면 사용 된 메모리가 빠르게 증가합니다 (Chromes Timeline Tab에서 가장 잘 볼 수 있습니다). DOM 노드의 수가 빠르게 증가하고 있습니다. 어떤 시점에서 분해됩니다 (일부 GC?)하지만 요소와 필요한 메모리가 빠르게 증가합니다.
누구든지이 문제를 해결하는 방법에 대해 알고 계셨습니까?
감사합니다.
Java ?! 거기에 JavaScript가 있다고 생각하세요, 친구! Java는 또한 가비지 컬렉션을 가지고 있습니다 ... – drewsberry
이런 식으로 Java와 Javascript도 비슷하게 작동합니다. –