<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    perf4j使用一

    如果大家使用的是maven工程,那么現在pom文件中加入perf4j的依賴。

    <dependency>

    <groupId>org.perf4j</groupId>

    <artifactId>perf4j</artifactId>

    <version>0.9.16</version>

    <scope>compile</scope>

    </dependency>

    如果用的是普通工程,那么直接下載jar包放入lib目錄下即可。

     

     

    例子:

    package com.baowu.per4j;

     

    import org.perf4j.LoggingStopWatch;

    import org.perf4j.StopWatch;

     

    public class Example1 {

     

        public static void main(String[] args) throws InterruptedException{

           method1();

           method2();

           method3();

        }

       

        /**

         * 監控一處代碼示例

         * @throws InterruptedException

         */

        private static void method1() throws InterruptedException{

           //創建一個監控對象,這里使用LoggingStopWatch,它是把結果直接輸出到控制臺。我們也可以

           //使用StopWatch的其他子類,比如:Log4JStopWatchCommonsLogStopWatch。不過這些子類需

           //要工程使用日志框架

           StopWatch stopWatch = new LoggingStopWatch("codeBlock1");

     

           //這里就是一些需要監控的代碼,我們命名為codeBlock1

           //使用線程休眠是為了模擬代碼執行時間

           Thread.sleep((long)(Math.random() * 1000L));

     

           //停止計算代碼性能

           stopWatch.stop();

        }

       

        /**

         * 一個方法多出代碼監控

         * @throws InterruptedException

         */

        private static void method2() throws InterruptedException{

           StopWatch stopWatch = new LoggingStopWatch();

           Thread.sleep((long)(Math.random() * 1000L));

           stopWatch.lap("codeBlock3");

           Thread.sleep((long)(Math.random() * 1000L));

           stopWatch.lap("codeBlock4");

           Thread.sleep((long)(Math.random() * 1000L));

           stopWatch.lap("codeBlock5");

           Thread.sleep((long)(Math.random() * 1000L));

           stopWatch.stop("codeBlock6");

        }

       

        /**

         * stop方法可以加入一些說明信息

         */

        private static void method3(){

           StopWatch stopWatch = new LoggingStopWatch();

           try {

               // the code block being timed - this is just a dummy example

               long sleepTime = (long)(Math.random() * 1000L);

               Thread.sleep(sleepTime);

               if (sleepTime > 500L) {

                   throw new Exception("Throwing exception");

               }

               stopWatch.stop("codeBlock2.success", "Sleep time was < 500 ms");

           } catch (Exception e) {

               stopWatch.stop("codeBlock2.failure", "Exception was: " + e);

           }

        }

    }

     

    運行結果:

    start[1334457619937] time[355] tag[codeBlock1]

    start[1334457620296] time[152] tag[codeBlock3]

    start[1334457620453] time[138] tag[codeBlock4]

    start[1334457620593] time[598] tag[codeBlock5]

    start[1334457621187] time[700] tag[codeBlock6]

    start[1334457621890] time[619] tag[codeBlock2.failure] message[Exception was: java.lang.Exception: Throwing exception]

    posted on 2012-04-15 10:44 yangpingyu 閱讀(2983) 評論(0)  編輯  收藏 所屬分類: java基礎

    <2012年4月>
    25262728293031
    1234567
    891011121314
    15161718192021
    22232425262728
    293012345

    導航

    統計

    常用鏈接

    留言簿

    隨筆分類

    隨筆檔案

    收藏夾

    linux

    產品交互

    分析,設計,架構

    安全

    技術牛人

    數據庫

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 99re免费视频| 国产午夜亚洲精品不卡| 久久久久久国产a免费观看不卡| 狠狠久久永久免费观看| 91亚洲精品自在在线观看| 很黄很色很刺激的视频免费| 亚洲一区二区三区免费视频| 中文字幕乱码免费视频| 亚洲日本久久久午夜精品| 在线观看人成视频免费| 亚洲成年人免费网站| 亚洲精品国产专区91在线| 永久看日本大片免费35分钟| 亚洲AV无码精品蜜桃| 国产婷婷高清在线观看免费 | 亚洲国产精品人人做人人爱| 香港一级毛片免费看| 亚洲精品国产高清嫩草影院 | 日韩人妻无码精品久久免费一| 亚洲AV人无码激艳猛片| 777成影片免费观看| 国产精品亚洲综合久久| 免费国产成人高清在线观看麻豆| 一个人看的在线免费视频| 亚洲成AV人片在线播放无码| 99在线精品视频观看免费| 亚洲av永久无码精品网址| 久久久久亚洲av毛片大| 久久精品一区二区免费看| 67194在线午夜亚洲| 亚洲午夜爱爱香蕉片| 久久久久久国产精品免费无码| 亚洲人片在线观看天堂无码| 国产亚洲精品自在线观看| 在线精品一卡乱码免费| 无码一区二区三区亚洲人妻| 久久亚洲高清观看| 四虎免费大片aⅴ入口| 久久免费观看视频| 亚洲中文无码亚洲人成影院| 亚洲夜夜欢A∨一区二区三区|