http://webo.in/articles/habrahabr/18...-memory-leaks/ отличная статья по утечкам памяти, но одного примера я немогу понять "Постраничные утечки".
Цытата:
"Базовый шаблон заключается во временном соединении двух только что созданных элементов вместе, что создает область видимости, в которой определен дочерний элемент. Затем, при включении этого двух-элементного дерева в основное, они оба наследуют контекст всего документа, и происходит утечка во временном объекте (чей контекст мы не закрыли)."
Пример из статьи:
function LeakMemory()
{
var hostElement = document.getElementById("hostElement");
// Давайте посмотрим, что происходит с памятью в Диспетчере Задач
for(i = 0; i < 5000; i++)
{
var parentDiv =
document.createElement("<div onClick='foo()'>");
var childDiv =
document.createElement("<div onClick='foo()'>");
// Здесь вызывается утечка на временном объекте
parentDiv.appendChild(childDiv);
hostElement.appendChild(parentDiv);
hostElement.removeChild(parentDiv);
parentDiv.removeChild(childDiv);
parentDiv = null;
childDiv = null;
}
hostElement = null;
}
Может ктото объяснить пожагово, как происходит это утчека?
Заранее благодарен.