| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Общие вопросы > сборщик муссора и метод finalize |
| Автор: underW 1.4.2010, 12:42 |
| судя из описаний того, как работает сборщик мусора, того, как выполняется метод finalize - складывается впечатление, что предугадать когда они выполняться или выполнятся ли вообще в принципе невозможно. Может быть кто то встречал описание при каких же условиях действительно сработает сборщик мусора? Или кто нибудь может привести пример кода, в котором задействован метод finalize? что бы своими глазами увидеть, что он действительно выполняется. |
| Автор: jk1 1.4.2010, 12:53 |
| На то, что метод finalize будет выполнен полагаться нельзя. Таким образом, если вам нужно освободить ресурсы или сохранить изменения, то вам придется писать собственные механизмы для этого. Что касается режима работы GC, то время и количество вызовов могут различаться в зависимоти от используемой JVM и от конкретного сборщика мусора. Вы можете отслеживать вызовы и делали процесса сборки с помощью флагов -verbosegc -XX:+PrintGCDetails. Если вам интересно как это работает, есть пара неплохих статей на этот счет http://www.ibm.com/developerworks/java/library/j-jtp10283/ http://www.ibm.com/developerworks/java/library/j-jtp11253/ |
| Автор: underW 1.4.2010, 13:07 |
| jk1, спасибо. |