Интернет магазин китайских планшетных компьютеров



Компьютеры - Подсчёт ссылок - Достоинства и недостатки

23 января 2011


Оглавление:
1. Подсчёт ссылок
2. Достоинства и недостатки



Главное достоинство подсчета ссылок перед отслеживающими сборщиками мусора в том, что объекты удаляются сразу как только на них нельзя сослаться, и в инкрементальной манере, без долгих пауз для циклов сборки и с ясно определенным временем жизни каждого объекта. В приложениях реального времени или в системах с ограниченной памятью это очень важно для поддержания малого времени отклика. Подсчет ссылок также является одним из простейших способов реализации сборки мусора. Он также обеспечивает эффективное управление не только памятью, но и другими видами ресурсов, например объектами операционной системы, которые часто гораздо малочисленней чем память. Взвешенные счетчики ссылок является хорошим решением для сборки мусора в распределенных системах.

Счетчики ссылок также полезны в качестве входной информации для различных оптимизаторов времени исполнения. Например системы сильно зависимые от неизменяемых объектов могут проигрывать в производительности из-за частых операций копирования. Однако, если мы знаем что какой-то объект имеет только одну ссылку, и эта ссылка потеряна а в то же время создан похожий новый объект, мы можем заменить эту операцию модификацией исходного объекта.

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

  • Частые обновления, порождаемые подсчетом ссылок, являются источником ухудшения эффективности. В то время как отслеживающие сборщики мусора могут сильно улучшить эффективность посредством переключения контекста и промахи мимо кеша, которые они получают относительно нечасто во время непрерывного доступа к объектам. Также, хотя это и менее важно, подсчет ссылок требует от каждого управляющего памятью объекта резервировать место для счетчика ссылок. В отслеживающих сборщиках мусора эта информация полностью хранится в самих ссылках на этот объект, сохраняя место, хотя отслеживающие сборщики мусора, особенно инкрементные, могут потребовать дополнительного места для других целей.
  • Простой алгоритм, описанный выше, не может справиться с циклическими ссылками, когда объект прямо или опосредованно ссылается на себя самого.


Просмотров: 1966


<<< Плоская модель памяти
Сборка мусора >>>