home.social

#dart_vm — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #dart_vm, aggregated by home.social.

  1. Сборщик мусора в Dart. Часть 2: поколения и scavenge

    В первой части мы разобрались как Dart отличает число от объекта. Эти знания нам пригодятся, чтобы разобраться в дальнейших хитростях сборщика. Перед нами стоит самый главный вопрос: А как сборщик все-таки за собой убирает? Молодое и старое поколение. Что происходит в обычном build() у Flutter-виджета? За один кадр создается куча временных объектов: EdgeInsets, Padding, промежуточные TextStyle, какие-то списки, замыкания. Живут они до следующего ребилда(Не учитывая const). Также у нас есть и другая категория объектов, которые живут долго: синглтоны, кэши, репозитории, состояние приложения. Они создаются один раз и живут все время работы. Отсюда вывод, если молодые объекты пересоздаются пачками, а старые в основном живут, то убирать их одинаково не выгодно. Именно поэтому Dart делит кучу на 2 поколения...

    habr.com/ru/articles/1066560/

    #Dart #Flutter #сборка_мусора #garbage_collector #gc #управление_паматью #dart_vm #scavenge #поколение #newspace

  2. Сборщик мусора в Dart. Часть 1: память и указатели

    Про сборщик мусора сейчас почти не говорят, но я часто слышу от коллег, что на собеседованиях про него спрашивают. Ещё заметил, что это один из популярных вопросов. Нормальных статей или обзоров про это почти нет, а если и есть, то они тяжёлые и очень нагруженные технической частью, которую понимают только сами создатели статей. Эта статья — моя попытка объяснить вам доходчивым языком, что же такое Garbage Collector в Dart, объяснить почему эти некоторые знания нам нужны на практике и что из всей этой тяжелой, технической внутрянки вам необходимо знать.

    habr.com/ru/articles/1054356/

    #Dart #Flutter #сборка_мусора #garbage_collector #GC #управление_памятью #указатели #Smi #tagged_pointers #Dart_VM