Как сборщик мусора может быстро узнать, какие объекты больше не имеют ссылок на них?
Я понимаю, что в Java, если объект больше не имеет ссылок на него, сборщик мусора вернет его обратно через некоторое время.
Но как сборщик мусора узнает, что объект имеет или не имеет ссылок, связанных с ним?
Сборщик мусора использует какую-то хэш-карту или таблицу?
Edit:
Обратите внимание, что я не спрашиваю, как обычно работает gc. на самом деле, я не спрашиваю об этом.
я спрашиваюspecifically То, как gc знает, какие объекты живы, а какие мертвы, с эффективностью.
Вот почему я говорю в своем вопросе, что gc поддерживает какую-то хэш-карту или набор и постоянно обновляет количество ссылок, которые имеет объект?