Создание Garbage Collector-а Народ, а кто-нибудь в Garbage Collection смыслит? Я вот слушаю сейчас автора Phantom OS, тот рассуждает о создании быстрого GC. Самое шустрое — ref-counting, но не работает с циклическими ссылками. И тут он возвращается к обычному GC-пауку. И тут я подумал… Цитирую свой комментарий:
У меня в голове смутно появилась мысль, что можно использовать идею рефкаунтов для циклов. Что я имею в виду. Я имею в виду, что в менеджере объектов к каждому объекту надо привязывать историю создания и ссылок. То есть — объект A порождает объект B, порождает объекты C, тот ссылается на A… И тут мы получаем у последнего историю: A-B-C-A и сразу видим цикл! Если на объект есть множество ссылок, их истории суммируются в массив, проверяются по очереди.
Я правильно понимаю, что это будет очень дешево и будет работать?

21 Авг 2019 в 07:10
178 +1
0
Ответы
1

Идея использования истории создания и ссылок для избежания утечек памяти в циклических ссылках звучит интересно. Однако, на практике реализация такого механизма может быть довольно сложной и требовать значительных вычислительных ресурсов.

Во-первых, для каждого объекта нужно будет хранить историю создания и ссылок, что может значительно увеличить нагрузку на систему. Кроме того, алгоритм проверки циклических ссылок в таком случае также будет довольно сложным и требовать определенных затрат.

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

20 Апр в 13:06
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 588 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир