亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? memorymonitor.java

?? 一個小公司要求給寫的很簡單的任務管理系統。
?? JAVA
字號:
/* * @(#)MemoryMonitor.java	1.37 06/08/29 *  * Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved. *  * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: *  * -Redistribution of source code must retain the above copyright notice, this *  list of conditions and the following disclaimer. *  * -Redistribution in binary form must reproduce the above copyright notice,  *  this list of conditions and the following disclaimer in the documentation *  and/or other materials provided with the distribution. *  * Neither the name of Sun Microsystems, Inc. or the names of contributors may  * be used to endorse or promote products derived from this software without  * specific prior written permission. *  * This software is provided "AS IS," without a warranty of any kind. ALL  * EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING * ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE * OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN MIDROSYSTEMS, INC. ("SUN") * AND ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE * AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR ANY LOST  * REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL,  * INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY  * OF LIABILITY, ARISING OUT OF THE USE OF OR INABILITY TO USE THIS SOFTWARE,  * EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. *  * You acknowledge that this software is not designed, licensed or intended * for use in the design, construction, operation or maintenance of any * nuclear facility. *//* * @(#)MemoryMonitor.java	1.37 06/08/29 */package java2d;import static java.awt.Color.*;import java.awt.*;import java.awt.event.*;import java.awt.image.BufferedImage;import java.awt.geom.Line2D;import java.awt.geom.Rectangle2D;import java.util.Date;import javax.swing.*;import javax.swing.border.EtchedBorder;import javax.swing.border.TitledBorder;/** * Tracks Memory allocated & used, displayed in graph form. */public class MemoryMonitor extends JPanel {    static JCheckBox dateStampCB = new JCheckBox("Output Date Stamp");    public Surface surf;    JPanel controls;    boolean doControls;    JTextField tf;    public MemoryMonitor() {        setLayout(new BorderLayout());        setBorder(new TitledBorder(new EtchedBorder(), "Memory Monitor"));        add(surf = new Surface());        controls = new JPanel();        controls.setPreferredSize(new Dimension(135,80));        Font font = new Font("serif", Font.PLAIN, 10);        JLabel label = new JLabel("Sample Rate");        label.setFont(font);        label.setForeground(BLACK);        controls.add(label);        tf = new JTextField("1000");        tf.setPreferredSize(new Dimension(45,20));        controls.add(tf);        controls.add(label = new JLabel("ms"));        label.setFont(font);        label.setForeground(BLACK);        controls.add(dateStampCB);        dateStampCB.setFont(font);        addMouseListener(new MouseAdapter() {            public void mouseClicked(MouseEvent e) {               removeAll();               if ((doControls = !doControls)) {                   surf.stop();                   add(controls);               } else {                   try {                        surf.sleepAmount = Long.parseLong(tf.getText().trim());                   } catch (Exception ex) {}                   surf.start();                   add(surf);               }               revalidate();               repaint();            }        });    }    public class Surface extends JPanel implements Runnable {        public Thread thread;        public long sleepAmount = 1000;        private int w, h;        private BufferedImage bimg;        private Graphics2D big;        private Font font = new Font("Times New Roman", Font.PLAIN, 11);        private Runtime r = Runtime.getRuntime();        private int columnInc;        private int pts[];        private int ptNum;        private int ascent, descent;        private float freeMemory, totalMemory;        private Rectangle graphOutlineRect = new Rectangle();        private Rectangle2D mfRect = new Rectangle2D.Float();        private Rectangle2D muRect = new Rectangle2D.Float();        private Line2D graphLine = new Line2D.Float();        private Color graphColor = new Color(46, 139, 87);        private Color mfColor = new Color(0, 100, 0);        private String usedStr;              public Surface() {            setBackground(BLACK);            addMouseListener(new MouseAdapter() {                public void mouseClicked(MouseEvent e) {                    if (thread == null) start(); else stop();                }            });        }        public Dimension getMinimumSize() {            return getPreferredSize();        }        public Dimension getMaximumSize() {            return getPreferredSize();        }        public Dimension getPreferredSize() {            return new Dimension(135,80);        }                    public void paint(Graphics g) {            if (big == null) {                return;            }            big.setBackground(getBackground());            big.clearRect(0,0,w,h);            float freeMemory = (float) r.freeMemory();            float totalMemory = (float) r.totalMemory();            // .. Draw allocated and used strings ..            big.setColor(GREEN);            big.drawString(String.valueOf((int) totalMemory/1024) + "K allocated",  4.0f, (float) ascent+0.5f);            usedStr = String.valueOf(((int) (totalMemory - freeMemory))/1024)                 + "K used";            big.drawString(usedStr, 4, h-descent);            // Calculate remaining size            float ssH = ascent + descent;            float remainingHeight = (float) (h - (ssH*2) - 0.5f);            float blockHeight = remainingHeight/10;            float blockWidth = 20.0f;            float remainingWidth = (float) (w - blockWidth - 10);            // .. Memory Free ..            big.setColor(mfColor);            int MemUsage = (int) ((freeMemory / totalMemory) * 10);            int i = 0;            for ( ; i < MemUsage ; i++) {                 mfRect.setRect(5,(float) ssH+i*blockHeight,                                blockWidth,(float) blockHeight-1);                big.fill(mfRect);            }            // .. Memory Used ..            big.setColor(GREEN);            for ( ; i < 10; i++)  {                muRect.setRect(5,(float) ssH+i*blockHeight,                                blockWidth,(float) blockHeight-1);                big.fill(muRect);            }            // .. Draw History Graph ..            big.setColor(graphColor);            int graphX = 30;            int graphY = (int) ssH;            int graphW = w - graphX - 5;            int graphH = (int) remainingHeight;            graphOutlineRect.setRect(graphX, graphY, graphW, graphH);            big.draw(graphOutlineRect);            int graphRow = graphH/10;            // .. Draw row ..            for (int j = graphY; j <= graphH+graphY; j += graphRow) {                graphLine.setLine(graphX,j,graphX+graphW,j);                big.draw(graphLine);            }                    // .. Draw animated column movement ..            int graphColumn = graphW/15;            if (columnInc == 0) {                columnInc = graphColumn;            }            for (int j = graphX+columnInc; j < graphW+graphX; j+=graphColumn) {                graphLine.setLine(j,graphY,j,graphY+graphH);                big.draw(graphLine);            }            --columnInc;            if (pts == null) {                pts = new int[graphW];                ptNum = 0;            } else if (pts.length != graphW) {                int tmp[] = null;                if (ptNum < graphW) {                         tmp = new int[ptNum];                    System.arraycopy(pts, 0, tmp, 0, tmp.length);                } else {                            tmp = new int[graphW];                    System.arraycopy(pts, pts.length-tmp.length, tmp, 0, tmp.length);                    ptNum = tmp.length - 2;                }                pts = new int[graphW];                System.arraycopy(tmp, 0, pts, 0, tmp.length);            } else {                big.setColor(YELLOW);                pts[ptNum] = (int)(graphY+graphH*(freeMemory/totalMemory));                for (int j=graphX+graphW-ptNum, k=0;k < ptNum; k++, j++) {                    if (k != 0) {                        if (pts[k] != pts[k-1]) {                            big.drawLine(j-1, pts[k-1], j, pts[k]);                        } else {                            big.fillRect(j, pts[k], 1, 1);                        }                    }                }                if (ptNum+2 == pts.length) {                    // throw out oldest point                    for (int j = 1;j < ptNum; j++) {                        pts[j-1] = pts[j];                    }                    --ptNum;                } else {                    ptNum++;                }            }            g.drawImage(bimg, 0, 0, this);        }        public void start() {            thread = new Thread(this);            thread.setPriority(Thread.MIN_PRIORITY);            thread.setName("MemoryMonitor");            thread.start();        }        public synchronized void stop() {            thread = null;            notify();        }        public void run() {            Thread me = Thread.currentThread();            while (thread == me && !isShowing() || getSize().width == 0) {                try {                    thread.sleep(500);                } catch (InterruptedException e) { return; }            }                while (thread == me && isShowing()) {                Dimension d = getSize();                if (d.width != w || d.height != h) {                    w = d.width;                    h = d.height;                    bimg = (BufferedImage) createImage(w, h);                    big = bimg.createGraphics();                    big.setFont(font);                    FontMetrics fm = big.getFontMetrics(font);                    ascent = (int) fm.getAscent();                    descent = (int) fm.getDescent();                }                repaint();                try {                    thread.sleep(sleepAmount);                } catch (InterruptedException e) { break; }                if (MemoryMonitor.dateStampCB.isSelected()) {                     System.out.println(new Date().toString() + " " + usedStr);                }            }            thread = null;        }    }    public static void main(String s[]) {        final MemoryMonitor demo = new MemoryMonitor();        WindowListener l = new WindowAdapter() {            public void windowClosing(WindowEvent e) {System.exit(0);}            public void windowDeiconified(WindowEvent e) { demo.surf.start(); }            public void windowIconified(WindowEvent e) { demo.surf.stop(); }        };        JFrame f = new JFrame("Java2D Demo - MemoryMonitor");        f.addWindowListener(l);        f.getContentPane().add("Center", demo);        f.pack();        f.setSize(new Dimension(200,200));        f.setVisible(true);        demo.surf.start();    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩三级在线| 高清国产一区二区| 激情五月婷婷综合| 国产91丝袜在线播放0| 99re热视频这里只精品| 欧美日韩三级一区二区| 精品伦理精品一区| 中文字幕日本不卡| 日本视频中文字幕一区二区三区| 卡一卡二国产精品 | 欧美美女黄视频| 2021国产精品久久精品| 亚洲男人都懂的| 奇米精品一区二区三区在线观看| 国产精品白丝jk黑袜喷水| 在线免费不卡视频| 精品处破学生在线二十三| 亚洲日本va午夜在线电影| 免费成人在线观看| 97久久超碰国产精品| 日韩一级高清毛片| 亚洲欧洲中文日韩久久av乱码| 视频一区二区国产| 97se亚洲国产综合自在线不卡| 欧美久久一区二区| 中文文精品字幕一区二区| 亚洲成a人在线观看| 成人免费视频app| 欧美另类一区二区三区| 国产精品日韩成人| 奇米影视一区二区三区小说| 99久久99久久精品免费观看| 精品欧美一区二区三区精品久久| 亚洲人123区| 国产精品99久久久久久宅男| 欧美日韩精品一区二区三区| 最新热久久免费视频| 麻豆91精品视频| 在线一区二区三区| 中文av一区特黄| 精品一区二区三区视频在线观看 | 一区二区三区四区乱视频| 韩国成人福利片在线播放| 欧美日韩卡一卡二| 亚洲三级在线免费观看| 国产成+人+日韩+欧美+亚洲| 日韩午夜三级在线| 亚洲国产裸拍裸体视频在线观看乱了 | av资源站一区| 久久久精品影视| 男女男精品视频网| 欧美伊人精品成人久久综合97| 中文字幕不卡在线观看| 国产一区二区在线观看视频| 5566中文字幕一区二区电影| 亚洲一区二区三区美女| 色综合久久中文综合久久97| 国产喷白浆一区二区三区| 久久丁香综合五月国产三级网站| 6080午夜不卡| 香蕉加勒比综合久久| 欧美专区在线观看一区| 亚洲日本va午夜在线电影| eeuss鲁片一区二区三区在线看| 国产午夜精品一区二区三区嫩草| 韩国女主播成人在线观看| 精品毛片乱码1区2区3区| 麻豆精品一区二区三区| 欧美一二三四区在线| 九九九久久久精品| 不卡一卡二卡三乱码免费网站| 国产午夜亚洲精品午夜鲁丝片| 麻豆精品一区二区三区| 欧美成人性福生活免费看| 久久精品国产亚洲aⅴ| 日韩三级伦理片妻子的秘密按摩| 免费人成网站在线观看欧美高清| 欧美二区在线观看| 青青草成人在线观看| 欧美电影免费观看高清完整版在线| 热久久久久久久| 精品国产免费人成电影在线观看四季| 秋霞电影一区二区| 精品国产免费人成电影在线观看四季 | 99久久精品国产精品久久| 亚洲人成网站影音先锋播放| 在线观看亚洲精品| 亚洲成av人片一区二区| 3atv一区二区三区| 激情文学综合丁香| 欧美韩国日本不卡| 色偷偷成人一区二区三区91| 亚洲一区二三区| 91精品国产欧美一区二区成人| 久久精品久久精品| 国产午夜精品久久久久久久 | 国产精品美女久久久久av爽李琼| 99久久777色| 香蕉av福利精品导航| 欧美大片日本大片免费观看| 国产成人亚洲综合a∨猫咪| 欧美国产成人精品| 欧美性欧美巨大黑白大战| 日本aⅴ免费视频一区二区三区| 精品黑人一区二区三区久久| 成人动漫视频在线| 亚洲国产精品自拍| 26uuu亚洲综合色欧美| 不卡高清视频专区| 亚洲成人av资源| 久久久综合网站| 色噜噜狠狠一区二区三区果冻| 天天影视涩香欲综合网| 久久精品日韩一区二区三区| 色一情一伦一子一伦一区| 奇米四色…亚洲| 国产午夜一区二区三区| 欧洲一区二区三区在线| 蜜桃一区二区三区在线观看| 国产精品久久久久久久久久免费看| 色欧美乱欧美15图片| 毛片av一区二区三区| 自拍偷拍国产亚洲| 欧美电影免费观看高清完整版| av亚洲精华国产精华精华| 青青草原综合久久大伊人精品优势| 中文欧美字幕免费| 91精品国产综合久久精品麻豆| 国产成人午夜精品影院观看视频| 亚洲主播在线观看| 久久综合九色综合97婷婷女人| 在线视频你懂得一区二区三区| 国产美女娇喘av呻吟久久| 一区二区三国产精华液| 久久久91精品国产一区二区三区| 欧美在线三级电影| 国产激情偷乱视频一区二区三区| 一区二区三区在线视频免费 | 欧美高清你懂得| 国产98色在线|日韩| 亚洲成人av一区| 国产精品国产三级国产a| 欧美tk丨vk视频| 在线观看日韩国产| 成人永久aaa| 麻豆精品国产传媒mv男同| 一区二区三区av电影| 中文字幕第一区| 久久久噜噜噜久久人人看| 正在播放一区二区| 欧美中文字幕亚洲一区二区va在线| 国产成人免费视| 麻豆91免费观看| 日韩影院免费视频| 亚洲一区二区精品久久av| 亚洲色图制服诱惑 | 国产亚洲欧美激情| 欧美一级黄色大片| 一本大道久久a久久综合婷婷| 黄色精品一二区| 亚洲综合网站在线观看| 亚洲天堂av一区| 26uuu亚洲综合色欧美| 欧美日韩久久一区二区| av一二三不卡影片| 成人激情av网| 国产一区二区三区观看| 视频一区在线播放| 午夜激情久久久| 亚洲女同女同女同女同女同69| 久久综合九色综合欧美亚洲| 一本一本大道香蕉久在线精品 | 17c精品麻豆一区二区免费| 亚洲精品在线免费播放| 91精品国产综合久久香蕉麻豆| 欧美三级一区二区| 色综合久久久久久久久久久| 国产精品亚洲а∨天堂免在线| 免费精品视频在线| 另类小说一区二区三区| 午夜视频在线观看一区| 亚洲日本中文字幕区| 久久无码av三级| 26uuu国产在线精品一区二区| 在线播放中文一区| 欧美日韩精品系列| 国产成人精品午夜视频免费| 风间由美中文字幕在线看视频国产欧美 | 成人高清在线视频| 国产夫妻精品视频| 国产精品中文字幕日韩精品| 午夜欧美在线一二页| 日本欧美在线观看| 视频在线观看一区| 天天综合日日夜夜精品| 久久www免费人成看片高清| 日本欧美一区二区| 日产国产高清一区二区三区 | 欧美亚洲禁片免费| 色婷婷综合五月|