2015-12-29 2 views
0

В приведенном ниже коде будет один объект s2, который имеет право на сбор мусора. Есть ли способ визуализировать работу сборщика мусора в Netbeans 8.0? Профиль/Debug/Часы/Plugin?Визуализация сборщика мусора

class Student { 
     String name; 
     int age; 
    } 

public class Test_Garbage { 
    public static void main(String[] args) { 
    Student s1 = new Student(); 
    Student s2 = new Student(); 
    Student s3 = new Student(); 
     s1 = s3; 
     s3 = s2; 
     s2 = null; 
    } 
} 
+0

Следует отметить, что сборщик мусора делает работу только, когда это необходимо (или как можно позже) и в этом случае, это не нужно, так что ничего не видно. –

+0

Спасибо, но его любой способ найти, когда визуализировать его? –

+0

Единственный инструмент, который показывает вам, что он делает, когда это происходит, это 'jstat'. Это позволит вам видеть, что объекты копируются из Eden в Survivor и нанимаются. Однако он должен быть в больших масштабах. т. е. вы можете не только видеть, что GC принимают несколько секунд, то есть много миллионов объектов. В общем, вам нужно только беспокоиться об этих деталях в очень больших масштабах. –

ответ

1

я использую Визуальный плагин GC в JVisualVM, что дает хорошую визуализацию объектов в последующих поколениях (Young/Survivir/ординарный). См here как установить его

Это лучший инструмент я нашел, как сейчас, что тоже идет с JDK

+0

Flight Recorder - отличный инструмент, который поставляется с JDK 8. –

+0

Полезно знать это. Благодарю. Изучит это. –

+0

Flight Recorder - это более низкие служебные данные для профилирования CPU и памяти и может выбирать между безопасными точками для получения более точных результатов. http://www.rationaljava.com/2015/03/java-flight-recorder-since-jdk-18040.html –

Смежные вопросы