The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Facebook открыл код фреймворка для выявления утечек памяти в JavaScript, opennews (ok), 19-Сен-22, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


37. "Facebook открыл код фреймворка для выявления утечек памяти в..."  +/
Сообщение от Аноним (32), 19-Сен-22, 21:34 
var obj = {};
console.log(obj);
obj = null;
так как Chrome сохраняет внутренние ссылки на выводимые объекты для предоставления возможности их последующего инспектирования в web-консоли.


Какое-то совсем неожиданное проведение.

Ответить | Правка | Наверх | Cообщить модератору

42. "Facebook открыл код фреймворка для выявления утечек памяти в..."  +/
Сообщение от Аноним (72), 19-Сен-22, 21:44 
почему неожиданное? можно позже щелкнуть в девтулзах по объекту правой кнопкой мыши и нажать "Store object as global variable" - и все, ссылка на объект снова восстановлена. IQ чуть выше, чем у хлебушка, подсказывает, что это было бы невозможно, если бы хром не сохранял ссылки на выводимые объекты.
Ответить | Правка | Наверх | Cообщить модератору

53. "Facebook открыл код фреймворка для выявления утечек памяти в..."  –1 +/
Сообщение от Аноним (32), 19-Сен-22, 22:00 
Пытаюсь проверить что местные эксперты знали ДО этой новости что console.log создаёт неудаляемый обьект, но что-то не получается.
Наверное iq хлебушка не даёт.
Ответить | Правка | Наверх | Cообщить модератору

45. "Facebook открыл код фреймворка для выявления утечек памяти в..."  –2 +/
Сообщение от Аноним (45), 19-Сен-22, 21:48 
Вполне себе ожидаемое поведение.

let a = {};
let b = {};
a.b = b;
b.a = a;
console.log(a)

Попробуй помедитировать в консоли раскрывая эту структуру до бесконечности и подумать, как такое может быть реализовано.

Ответить | Правка | К родителю #37 | Наверх | Cообщить модератору

50. "Facebook открыл код фреймворка для выявления утечек памяти в..."  +/
Сообщение от Аноним (-), 19-Сен-22, 21:54 
В хромом они устаревают и очищаются.
Ответить | Правка | Наверх | Cообщить модератору

178. "Facebook открыл код фреймворка для выявления утечек памяти в..."  +/
Сообщение от Аноним (178), 20-Сен-22, 13:32 
> Какое-то совсем неожиданное проведение.

Как раз ожидаемое! Объект использует консоль браузера, освобождать объект нельзя (с ним работает консоль, сами же попросили вызвав console.log). Когда в консоли очередь переполнится (которую наверное нужно поменьше поставить) тогда объект и будет удалён.


Даже в православной Java вызов сборки мусора не гарантирует освобождение памяти. GC может всякие эвристики использовать и не спешить отдавать память (для всяких SoftReference), мало ли... В итоге он освободит, но иногда не по первому вызову.

Ответить | Правка | К родителю #37 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру