Недостижимая память - Unreachable memory

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

В реализациях распределения динамической памяти, которые используют уборщик мусора, объекты возвращаются после того, как становятся недоступными. Сборщик мусора может определить, доступен ли объект; любой объект, который определен как недоступный, может быть освобожден. Много языки программирования (Например, Ява, C #, D, Дилан ) использовать автоматическую сборку мусора.

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

Некоторые сборщики мусора реализуют слабые ссылки. Если объект доступен только через слабые ссылки или цепочки ссылок, которые включают слабую ссылку, то объект называется слабодоступный. Сборщик мусора может обрабатывать слабодоступные граф объекта как недоступный и освободите его. (И наоборот, ссылки, предотвращающие сборку мусора, называются сильные ссылки; Слабо достижимый объект недоступен для любой цепочки, состоящей только из сильных ссылок.) Некоторые сборщики мусора объектно-ориентированный языки, такие как Ява и Python, имеют слабые ссылки. В Пакет Java java.lang.ref поддерживает мягкие, слабые и фантомные ссылки, что приводит к дополнительным состояниям достижимости объекта мягко достижимый и фантомная достижимость.

Недостижимая память часто связана с старение программного обеспечения.

внешняя ссылка

  • Николас, Итан (4 мая 2006 г.). «Понимание слабых ссылок». java.net. Архивировано из оригинал 19 августа 2010 г.. Получено 1 октября 2010. Внешняя ссылка в | publisher = (помощь)