• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • JAVA程序實現監視-JAVA程序內存使用情況

    發表于:2007-07-14來源:作者:點擊數: 標簽:
    ========================================= package myprojects.jmemorydemo; import java x.swing.UIManager; import java.awt.*; public class JMemoryDemo { private boolean packFrame = false; public JMemoryDemo() { MainFrame frame = new MainFram
    =========================================
    package myprojects.jmemorydemo;

    import javax.swing.UIManager;
    import java.awt.*;


    public class JMemoryDemo {
    private boolean packFrame = false;


    public JMemoryDemo() {
    MainFrame frame = new MainFrame();

    if (packFrame) {
    frame.pack();
    }
    else {
    frame.validate();
    }

    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
    Dimension frameSize = frame.getSize();
    if (frameSize.height > screenSize.height) {
    frameSize.height = screenSize.height;
    }
    if (frameSize.width > screenSize.width) {
    frameSize.width = screenSize.width;
    }
    frame.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height)
    / 2);
    frame.setVisible(true);
    }

    public static void main(String[] args)
    {
    new JMemoryDemo();
    }
    }

    ===================================================
    package myprojects.jmemorydemo;
    import javax.swing.*;



    public class ProgressThread extends Thread {
    JProgressBar pbar;
    JLabel label;

    public ProgressThread(JProgressBar pbar,JLabel label) {
    this.pbar=pbar;
    this.label=label;
    }
    public void run() {


    int min=0;
    int max=100;
    int free=0;
    int totle=0;
    int status=0;

    pbar.setMinimum(min);
    pbar.setMaximum(max);
    pbar.setValue(status);
    while(true){
    try{
    totle=(int)(Runtime.getRuntime().totalMemory()/1024);
    free=(int)(Runtime.getRuntime().freeMemory()/1024);
    }catch(Exception e){
    e.printStackTrace();
    }
    label.setText("Free Memory :"+(int)(Runtime.getRuntime().freeMemory()/1024)+"K"+" Totle Memory Allo
    cated :"
    +(int)(Runtime.getRuntime().totalMemory()/1024)+"K");
    status=(int)(free*100/totle);
    pbar.setValue(status);
    pbar.setString("Free Momery "+ status+"%");
    try{
    this.sleep(1000);
    }catch(InterruptedException err){}
    }

    }

    }

    ===============================================
    package myprojects.jmemorydemo;


    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;



    public class MainFrame extends JFrame {
    private JPanel contentPane;
    private BorderLayout borderLayout1 = new BorderLayout();
    private JProgressBar jProgressBar1 = new JProgressBar();
    private JLabel jLabel1 = new JLabel();
    private JLabel jLabel2 = new JLabel();


    public MainFrame() {
    enableEvents(AWTEvent.WINDOW_EVENT_MASK);
    try {
    jbInit();
    }
    catch(Exception e) {
    e.printStackTrace();
    }
    }

    private void jbInit() throws Exception {
    (MainFrame.class.getResource("[Your Icon]")));
    contentPane = (JPanel) this.getContentPane();
    contentPane.setLayout(borderLayout1);
    this.setSize(new Dimension(304, 215));
    this.setTitle("JMemoryDemo");
    jLabel1.setFont(new java.awt.Font("Dialog", 0, 14));
    jLabel1.setHorizontalAlignment(SwingConstants.CENTER);
    jLabel1.setText("Memory Monitor");
    jProgressBar1.setOrientation(JProgressBar.VERTICAL);
    jProgressBar1.setFont(new java.awt.Font("Dialog", 0, 14));
    jProgressBar1.setToolTipText("");
    jProgressBar1.setStringPainted(true);
    jLabel2.setFont(new java.awt.Font("Dialog", 0, 14));
    jLabel2.setText("");
    contentPane.add(jProgressBar1, BorderLayout.CENTER);
    contentPane.add(jLabel1, BorderLayout.NORTH);
    contentPane.add(jLabel2, BorderLayout.SOUTH);

    ProgressThread pThread = new ProgressThread(this.jProgressBar1,this.jLabel2);
    pThread.start();
    }

    protected void processWindowEvent(WindowEvent e) {
    super.processWindowEvent(e);
    if (e.getID() == WindowEvent.WINDOW_CLOSING) {
    System.exit(0);
    }
    }
    }
    ======================================================================
    提示如下:
    ======================================================================
    問題的關鍵:
    totle=(int)(Runtime.getRuntime().totalMemory()/1024);
    free=(int)(Runtime.getRuntime().freeMemory()/1024);
    ===================================================
    有什么問題,可以發Email:dw5189@163.com
    ========================================

    提供最新版的JCreator PRO build 3.00.094

    http://www.jcreator.com/download.htm

    Username: P145460-Brian Luke

    Key: 00HE3T-MX6F41-7E9CFN-68745A-RD1PAJ-0GKKPP-YYJVDR-CXJXHG-6GFXX8
    ========================================

    提供JCreator PRO build 2.50序列號:

    注冊碼:
    etalking
    niit
    P-etalking niit
    36336-27630-63362-56226-23628

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>