Если один экземпляр класса создается с использованием шаблона singleton, если он не ссылается в течение длительного времени, если GC обнаружит нерасширенное дерево, чей лист является экземпляром Singleton, будет ли это сбор мусора?Когда объект класса Singleton собирает мусор?
ответ
Ну, singleton pattern реализуется путем определения частного статического поля, частного конструктора и статического метода, который возвращает поле. Итак, вопрос сводится к следующему: статическое поле собрано в мусор?
Ответ: нет, по крайней мере, в соответствии с этим SO ответ: Do static members ever get garbage collected?
Таким образом, даже если нет никаких других ссылок на статическое поле не будет GC'ed.
Как насчет того, когда Singleton реализован с использованием Enum? –
Посмотрите, что в исходном вопросе, если у нас есть статическое поле в классе, ссылающемся на объект, и мы устанавливаем его в null, тогда объект, на который он ссылается, может быть GC'ed, но при этом мы разбиваем одноэлементный шаблон. – user244255
- 1. Собирает ли этот объект мусор?
- 2. Собирает ли ягненок мусор?
- 3. Когда этот анонимный объект класса создан и доступен, и когда он собирает мусор?
- 4. Что происходит, когда Scala «Будущее» собирает мусор?
- 5. Что происходит, когда значение Async собирает мусор?
- 6. Собирает ли этот мусор?
- 7. Почему webappclassloader не собирает мусор?
- 8. JFrame никогда не собирает мусор
- 9. Собирает ли объективный C-мусор?
- 10. Java - Наблюдайте за WeakReference, когда референт собирает мусор?
- 11. Как и когда удалять/мусор собирать экземпляр singleton
- 12. Неужели Haskell выбрасывает искру, когда трюк собирает мусор?
- 13. Почему Silverlight ContentControls не собирает мусор?
- 14. Haskell не мусор собирает голову списка?
- 15. Почему эта неиспользуемая строка не собирает мусор?
- 16. Почему этот Git не собирает мусор?
- 17. Chrome/V8 не мусор собирает круговую ссылку?
- 18. Почему этот слабый слушатель не собирает мусор?
- 19. Собирает ли OCaml мусор промежуточные результаты?
- 20. Чтение из файла в C++ собирает мусор
- 21. Собирает ли мусор части частей ломтиков?
- 22. Java слабая ссылка: когда GC собирает объект
- 23. Почему JVM-мусор не собирает неотвязанные объекты String немедленно?
- 24. Собирает ли мусор объекта при удалении со статической карты?
- 25. Мусор собирает класс со ссылкой на его экземпляр?
- 26. Почему AsyncTask не собирает мусор, если ссылка выходит за рамки?
- 27. Scala: получить объект singleton из класса
- 28. Почему мусор node.js не собирает системные ресурсы (например, дескрипторы файлов)?
- 29. Объект класса Singleton, на который ссылается null
- 30. Как отличается объект Singleton от экземпляра класса
На каком языке вы работаете? – Bergi