1 października
22:20 2006
Oto funkcja tworząca przycisk, który wyświetla bieżące zużycie pamięci (heap) przez uruchomioną aplikację. Wciśnięcie przycisku uruchamia garbage collector. Prosta rzecz, a znacznie ułatwia śledzenie wycieków pamięci ;-)
public static JButton createMemoryPanel() { final JButton button = new JButton(); button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { System.gc(); } } ); button.setToolTipText("GC"); new Timer(2000, new ActionListener() { public void actionPerformed(ActionEvent e) { MemoryMXBean memory = ManagementFactory.getMemoryMXBean(); long heap = memory.getHeapMemoryUsage().getUsed(); button.setText(String.format("%1.2f M", (float)heap / 1048576)); Timer.class.cast(e.getSource()).restart(); } } ).start(); return button; }
Proszę o komentarz
Menedżer zadań? :>
Ja tam wolę po prostu pisać dobre programy, a memleaki leczyć valgrindem q;.