日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

《编程之美》(Java实现) :让CPU占用率画直线和正弦曲线(Java实现)

發布時間:2025/3/19 java 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 《编程之美》(Java实现) :让CPU占用率画直线和正弦曲线(Java实现) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

  • public?class?CPUTest?{??
  • ??????
  • ????//定義時間片大小(毫秒)??
  • ????public?static?final?double?TIME?=?1000;??
  • ????//畫直線方法??
  • ????private?static?void?lineGraph(double?rate)?throws?InterruptedException{??
  • ????????while?(true){??
  • ????????????doSomeSimpleWork(rate?*?TIME);??
  • ????????????Thread.sleep((long)?(TIME?-?rate?*?TIME));??
  • ????????}??
  • ????}??
  • ????//畫正弦曲線方法??
  • ????private?static?void?sinGraph()?throws?InterruptedException{??
  • ????????double?x?=?0;??
  • ????????double?y?=?0;?????????
  • ????????while?(true){??
  • ????????????y?=?(Math.sin(x)?+?1)?*?TIME?/?2;??
  • ????????????doSomeSimpleWork(y);??
  • ????????????x?+=?0.1;??
  • ????????????Thread.sleep((long)?(TIME?-?y));??
  • ????????}??
  • ????}??
  • ????//占用CPU方法??
  • ????private?static?void?doSomeSimpleWork(double?time)?{??
  • ????????long?startTime?=?System.currentTimeMillis();??
  • ????????while?((System.currentTimeMillis()?-?startTime)?<?time)?{??
  • ????????}??
  • ????}??
  • ??????
  • ????/**?
  • ?????*?@param?args?the?command?line?arguments?
  • ?????*/??
  • ????public?static?void?main(String[]?args)?throws?InterruptedException?{??
  • ????????lineGraph(0.5);??
  • ??????? sinGraph();??
  • ????}??
  • ??????
  • }??
  • ?

    ?

    package cglib;

    ?

    public class jiekou {

    ??? public static void drawLine(){?? ?
    ??????? int usage = 700; ?
    ??????? System.out.println("Test Begins...");??????? ?
    ??????? while(true){???????? ?
    ??????????? long start = System.currentTimeMillis(); ?
    ??????????? while(System.currentTimeMillis() - start < usage ); ?
    ??????????? try{ ?
    ??????????????? Thread.sleep(1000-usage); ?
    ??????????? }catch(Exception e){ ?
    ??????????????? System.out.print(e); ?
    ??????????? }??????? ?
    ??????? } ?
    ??? } ?
    ??? public static void drawSin(){ ?
    ??????? double x = Math.PI / 2;? ?
    ??????? while(true){ ?
    ??????????? //下面這一句+1是因為sinx可能為負數,最大為-1,加上1的話就保證為正了 ?
    ??????????? //*0.5是應為加1之后,最大數可能達到2,為了限制在1以內,所以*0.5 ?
    ??????????? long usage = (long)((Math.sin(x)+1)*0.5*1000); ?
    ??????????? System.out.println(usage); ?
    ??????????? long start =? System.currentTimeMillis(); ?
    ??????????? while(System.currentTimeMillis() - start < usage); ?
    ??????????? try{ ?
    ??????????????? Thread.sleep(1000 - usage); ?
    ??????????? }catch(Exception e){ ?
    ??????????????? System.out.print(e); ?
    ??????????? } ?
    ??????????? x += 0.1; ?
    ??????? } ?
    ??? }??? ?
    ??? public static void drawSinSpeedup(){ ?
    ??????? double x = Math.PI / 2;? ?
    ??????? //加入了刷新時間,可以調控曲線彎曲程度 ?
    ??????? int flushtime = 5000; ?
    ??????? while(true){ ?
    ??????????? long usage = (long)((Math.sin(x)+1)*0.5*flushtime); ?
    ??????????? System.out.println(usage); ?
    ??????????? long start =? System.currentTimeMillis(); ?
    ??????????? while(System.currentTimeMillis() - start < usage); ?
    ??????????? try{ ?
    ??????????????? Thread.sleep(flushtime - usage); ?
    ??????????? }catch(Exception e){ ?
    ??????????????? System.out.print(e); ?
    ??????????? } ?
    ??????????? x += 0.1; ?
    ??????? } ?
    ??? } ?
    ?? ?
    ??? public static void main(String[] args) throws InterruptedException { ?
    ?? ??? ?drawLine(); ?
    ?? ??? ?drawSin(); ?
    ??? } ?

    ??? }

    轉載于:https://my.oschina.net/u/2822116/blog/723882

    總結

    以上是生活随笔為你收集整理的《编程之美》(Java实现) :让CPU占用率画直线和正弦曲线(Java实现)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。