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

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

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

    posts - 8,  comments - 6,  trackbacks - 0

    1.7  以納秒級的時間計算:使用System.nanoTime 

    Java5+

    摩爾定律是一種眾所周知的現象,即計算機中的晶體管數量和它的處理速度隨時間呈指數規律增長。作為仙童半導體公司(Fairchild Semiconductor)的研發領導人,戈登•摩爾于1965年提出了這一偉大發現。迄今為止,它仍有效。
    與Java首次出現的時候相比,當前計算機的速度要快得多,對于很多應用程序而言以毫秒計時已不再能夠滿足要求。你可能使用過java.lang.System類,利用currentTimeMillis方法來獲得一個方法調用或一段代碼的定時信息。此方法可以用來度量執行某操作所花費的時間。但是,在運算速度更快的計算機上操作花費的時間可能遠小于1毫秒,于是可以在一個for循環中執行此操作上百次或上千次,然后除以循環次數來計算此操作的單位時間。考慮下面的示例:

    long startTime = System.currentTimeMillis();
    for (int i=0; i<1000; i++) {
    performOperation(); // something we want to measure
    }
    long endTime = System.currentTimeMillis();
    long totalTimeInMillis = endTime - startTime;
    // because the count was 1000, it's easy to get the unit time
    long unitTimeInMicros = totalTimeInMillis;

    這種一種很簡單的運算,因為使用了for循環1000次。但是如果要度量亞微秒該如何實現呢?

    for(int i=0; i<1000000; i++) { performOperation(); }
    如果從人類的角度來看,可憐的for循環將不得不不厭其煩地百萬次的頻繁循環!此外,只有在重復執行操作沒有副作用的情況下使用for循環來計算時間才是有用的。如果操作是調用java.util.Collections.sort方法,那么將很難計算出排序過程花費的時間。在Java 5中,System類有一個新的nanoTime方法,它能返回一個納秒精度的計數器。盡管不能將它用于度量絕對時間,但是它能夠很好地度量時間差別。

    List myList = initializeList();  // initialize the List somehow
    long startTime = System.nanoTime();
    Collections.sort(myList);         // measuring the sort time
    long endTime = System.nanoTime();
    long differenceInNanoseconds = endTime - startTime;

    遺憾的是,運行上面的代碼時無法保證實際上獲得的是納秒級的度量。但是使用更快的機器和良好的JRE實現,對于測試目的而言它是一種有用的度量方法。可以在JDK 5文檔中找到更多有關此方法的信息。鑒于操作系統特性、機器處理速度和系統負載的不同,得到的由nanoTime方法返回的值可能會有很大的變化。隨著時間的推移此問題應該會有所改善,摩爾定律基本上能保證這一點。

    參考資料:

    想要了解摩爾的原始論文,請參看Gordon E. Moore, Cramming More Components onto Integrated Circuits, Electronics, Vol. 38, No. 8 (April 19, 1965)。此外,還可以在網上獲得該論文,參看本書的網站http:// wickedcooljava.com以獲得URL。


    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    留言簿(1)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    •  

    最新評論

    閱讀排行榜

    主站蜘蛛池模板: 99久久免费国产精品热| 亚洲中文精品久久久久久不卡| 国产亚洲情侣久久精品| 成人免费无码大片a毛片软件 | 亚洲国产精品碰碰| 亚洲av日韩av永久在线观看| 国产高清免费的视频| 羞羞视频免费观看| 久久亚洲国产成人精品无码区| 一个人免费播放在线视频看片| 中文字幕精品亚洲无线码一区| a毛片免费在线观看| 久久久无码精品亚洲日韩蜜桃| 日本一区二区三区免费高清| 国产精品久久久久久久久久免费| 免费在线观看毛片| 国产午夜成人免费看片无遮挡| 亚洲中文精品久久久久久不卡| 亚洲精品蜜桃久久久久久| 免费无码又爽又刺激毛片| 免费在线一级毛片| 国产成人高清亚洲一区91| 亚洲日韩涩涩成人午夜私人影院| 一区二区在线视频免费观看| 久久久久亚洲精品美女| 18禁免费无码无遮挡不卡网站| 337P日本欧洲亚洲大胆艺术图| 91麻豆精品国产自产在线观看亚洲| 无码囯产精品一区二区免费| 亚洲乱妇熟女爽到高潮的片| 亚洲国产成人久久一区WWW| 久久精品国产免费一区| 亚洲av无码电影网| 亚洲午夜国产片在线观看| 久久国产乱子伦精品免费强| 亚洲中文精品久久久久久不卡| 中文字幕亚洲乱码熟女一区二区| 波多野结衣免费在线| 羞羞网站在线免费观看| 亚洲欧洲日本国产| 亚洲免费一区二区|