Revision: 3798
          http://vexi.svn.sourceforge.net/vexi/?rev=3798&view=rev
Author:   jeffbuhrt
Date:     2010-02-10 22:25:09 +0000 (Wed, 10 Feb 2010)

Log Message:
-----------
Added button to display Java Heap information

Modified Paths:
--------------
    trunk/core/org.vexi.devl/src/org/vexi/instrument/memory/Memory.java

Modified: trunk/core/org.vexi.devl/src/org/vexi/instrument/memory/Memory.java
===================================================================
--- trunk/core/org.vexi.devl/src/org/vexi/instrument/memory/Memory.java 
2010-02-10 02:59:37 UTC (rev 3797)
+++ trunk/core/org.vexi.devl/src/org/vexi/instrument/memory/Memory.java 
2010-02-10 22:25:09 UTC (rev 3798)
@@ -1,15 +1,26 @@
 package org.vexi.instrument.memory;
 
-import java.awt.*;
-import java.awt.event.*;
-import java.lang.ref.*;
-import java.util.*;
+import java.awt.FlowLayout;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.lang.ref.Reference;
+import java.lang.ref.SoftReference;
+import java.text.NumberFormat;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
-import javax.swing.*;
+import javax.swing.JButton;
+import javax.swing.JFrame;
 
-import org.ibex.js.*;
-import org.ibex.util.*;
+import org.ibex.js.Instr;
+import org.ibex.js.JS;
+import org.ibex.js.JSExn;
+import org.ibex.js.JSU;
+import org.ibex.util.Basket;
 import org.vexi.util.Log;
 
 // FIXME - move devl js implementation out of here
@@ -179,23 +190,39 @@
                                }
                        });
                        
-                       JButton button3 = new JButton("GC");
+                       JButton button3 = new JButton("Memory Use");
                        button3.addActionListener(new ActionListener(){
                                public void actionPerformed(ActionEvent e) {
+                       Runtime r = Runtime.getRuntime();
+
+                       long freeMem = r.freeMemory() / 1024;
+                       long maxMem = r.maxMemory() / 1024;
+                       long totalMem = r.totalMemory() / 1024;
+
+                    System.out.println("Memory Use " +
+                            
NumberFormat.getInstance().format(maxMem).toString() + "KB Maximum, " +
+                            
NumberFormat.getInstance().format(totalMem).toString() + "KB InUse, " +
+                            
NumberFormat.getInstance().format(freeMem).toString() + "KB Free");
+                }
+                       });
+                       
+                       JButton button4 = new JButton("GC");
+                       button4.addActionListener(new ActionListener(){
+                               public void actionPerformed(ActionEvent e) {
                            System.gc();
                            System.runFinalization();
                                }
                        });
                        
-                       JButton button4 = new JButton("Assert GC");
-                       button4.addActionListener(new ActionListener(){
+                       JButton button5 = new JButton("Assert GC");
+                       button5.addActionListener(new ActionListener(){
                                public void actionPerformed(ActionEvent e) {
                                        assertCollection();
                                }
                        });
                        
-                       JButton button5 = new JButton("Reset MARKER");
-                       button5.addActionListener(new ActionListener(){
+                       JButton button6 = new JButton("Reset MARKER");
+                       button6.addActionListener(new ActionListener(){
                                public void actionPerformed(ActionEvent e) {
                                        MARKER=new Marker();
                                }
@@ -206,7 +233,8 @@
                        frame.add(button3);
                        frame.add(button4);
                        frame.add(button5);
-                       frame.setSize(100,200);
+                       frame.add(button6);
+                       frame.setSize(100,220);
                        frame.setVisible(true);
                }
        }


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

------------------------------------------------------------------------------
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
_______________________________________________
Vexi-svn mailing list
Vexi-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vexi-svn

Reply via email to