Уборщик мусора

Автор: Louise Ward
Дата создания: 5 Февраль 2021
Дата обновления: 1 Июль 2024
Anonim
СПАСИТЕЛЬ ОСТРОВА Island Saver
Видео: СПАСИТЕЛЬ ОСТРОВА Island Saver

Содержание

Определение - Что означает сборщик мусора?

Сборщик мусора - это часть программного обеспечения, которая выполняет автоматическое управление памятью. Его работа заключается в освобождении любой неиспользуемой памяти и обеспечении того, чтобы ни одна память не была освобождена, пока она еще используется. Некоторые языки, такие как языки Java и .NET, поддерживают автоматическую сборку мусора, тогда как другие, такие как C / C ++, требуют от программиста ручного управления памятью.


Введение в Microsoft Azure и Microsoft Cloud | Из этого руководства вы узнаете, что такое облачные вычисления и как Microsoft Azure может помочь вам перенести и запустить свой бизнес из облака.

Техопедия объясняет сборщик мусора

Сборщик мусора был впервые представлен создателем Lisp Джоном Маккарти, чтобы упростить ручное управление памятью при работе с языком Lisp.

Три основных метода, используемых сборщиком мусора для автоматического управления памятью:

  • Подсчет ссылок - Ссылка на каждый объект подсчитывается с использованием переменной счетчика. Когда счетчик достигает нуля, это означает, что объект больше не нужен и, следовательно, перерабатывается.
  • Пометить и развернуть - выполняется рекурсивный обход всех достижимых объектов во всех областях данных, и достижимые объекты помечаются. Немаркированные объекты затем перерабатываются.
  • Остановка и копирование. Куча памяти разделена на два раздела: раздел, содержащий объекты, и пустой раздел, в который объекты передаются (копируются), если обнаруживается, что они отмечены. Немаркированные объекты в первом разделе перерабатываются путем его опустошения.

Когда блок памяти, назначенный указателю / объекту, был освобожден, указатель / объект должен быть сброшен в нулевое значение; в противном случае он свисает, то есть указывает на недопустимый блок памяти.


Сборка мусора помогает уменьшить количество ошибок и угроз безопасности, вызванных висячими указателями и проблемами утечки памяти.

Недостатки использования сборщика мусора включают дополнительные издержки на ресурсы и производительность. Запуск сборщика мусора также может замедлить работу системы и, следовательно, снизить ее производительность.