Примеры утечек памяти в JavaScript

  Рет қаралды 6,758

LN Master

LN Master

Күн бұрын

Утечки памяти происходят, когда браузер по какой-то причине не может освободить память от недостижимых объектов.
Обычно это происходит автоматически (Управление памятью в JavaScript). Кроме того, браузер освобождает память при переходе на другую страницу. Поэтому утечки в реальной жизни проявляют себя в двух ситуациях:
1. Приложение, в котором посетитель все время на одной странице и работает со сложным JavaScript-интерфейсом. В этом случае утечки могут постепенно съедать доступную память.
Страница регулярно делает что-то, вызывающее утечку памяти. Посетитель (например, менеджер) оставляет компьютер на ночь включённым, чтобы не закрывать браузер с кучей вкладок. Приходит утром - а браузер съел всю память и рухнул и сильно тормозит.
2. Утечки бывают из-за ошибок браузера, ошибок в расширениях браузера и, гораздо реже, по причине ошибок в архитектуре JavaScript-кода. Мы разберём несколько наиболее частых и важных примеров.
👉Telegram канал: t.me/ln_yt
👉 Telegram лс: @lnmasterJS
👉 ВК-сообщество: club194...
🔥 Персональный блог: lnblogdjango.h...
#js #memory_leak

Пікірлер: 14
@ccjx_space
@ccjx_space Жыл бұрын
Очень полезно, спасибо! Пожалуйста, продолжайте, у вас хорошо получается - просто, с юмором, по делу и без натужных попыток привлечь внимание как на многих других каналах
@artemlobanchikov2270
@artemlobanchikov2270 2 жыл бұрын
Спасибо огромное за такие видео. Такого контента очень не хватает на ютубе
@dobermanpharaoh7567
@dobermanpharaoh7567 Жыл бұрын
Действительно, очень подробное видео по теме! На русском языке это редкость! Большое спасибо за старания! Смотрю до конца!
@АлександрСосо-щ1б
@АлександрСосо-щ1б Жыл бұрын
Спасибо! полезное видео!
@DenisB-d5f
@DenisB-d5f Жыл бұрын
Чувак, это бомба
@arturprydatko6354
@arturprydatko6354 Ай бұрын
круто
@vaddepro
@vaddepro 7 ай бұрын
спасибо!🙂
@centwor1on167
@centwor1on167 2 жыл бұрын
Спасибо!
@MallSerg
@MallSerg 5 ай бұрын
Комбо для пробития дна
@vladislavverner539
@vladislavverner539 7 ай бұрын
очень жаль, что удаляете комментарии
@LNMaster_
@LNMaster_ 7 ай бұрын
На основании чего вы сделали такой вывод ?
@vladislavverner539
@vladislavverner539 7 ай бұрын
@@LNMaster_ извините, ютуб оказывается удалил его из-за того, что я прикрепил ссылку. Примитивы в JS тоже лежат в куче, потому что даже примитивы являются объектами, внутри которых лежит много всего. Например, ссылка на прототип, дескрипторы полей и тд. Исключением являются простые числа, что вы у видели в мемори дебаггере с числовой переменной. Когда мы создаем строковую переменную, ее настоящее значение (сама строка) является указателем на участок памяти в куче, а не на стеке. В отличие от C/C++ у нас нет возможности на это как-то повлиять, потому что v8 - виртуальная машина, которая как вы правильно сказали сама управляет памятью и освобождает ее. Есть статья в v8 блоге называется Pointer Compression in V8, там про это как раз говорится подробно.
@DenInside
@DenInside Жыл бұрын
А есть видос про сборщик мусора?
@LNMaster_
@LNMaster_ Жыл бұрын
Конкретно у меня нет
Решаем задачи с LeetCode: Add Two Numbers #2
40:35
Шок. Никокадо Авокадо похудел на 110 кг
00:44
Chrome DevTools - спрятанные полезности
38:04
Yandex for Developers
Рет қаралды 14 М.
Callback функции в JavaScript,  синхронные и асинхронные callback, callback hell
37:01
WebDev с нуля. Канал Алекса Лущенко
Рет қаралды 35 М.
Никита Сальников-Тарновский - Утечки памяти
44:37
Структуры данных в JavaScript | Odessa Frontend Meetup #13
43:08
Odesa Frontend Community
Рет қаралды 23 М.
Закладка Performance DevTools в Chrome
38:07
Ускорение Сайтов :: Метод Лаб
Рет қаралды 20 М.
Что такое рекурсия. Фундаментальный JavaScript
20:32
Михаил Непомнящий
Рет қаралды 23 М.
Шок. Никокадо Авокадо похудел на 110 кг
00:44