单核CPU画正弦曲线
2016-04-17 22:11
141 查看
编程之美第一个题目是控制CPU的比例,让单核CPU的利用率一直在50%,还有一个是画正弦曲线。
自己用java写了一个,如下:
自己用java写了一个,如下:
public class Solution { public void drawSin(){ int width = 200; //数组宽度,理解为正弦的步长 int height = 100; //正弦的最大高度 int mid = height/2; //一半高度, //这个数组用于控制处于CPU busy状态的高度 //那其余的高度就用总高度减去它 int[] highs = new int[width]; double interval = 2*Math.PI/width; double init = 0; for(int i=1;i<width;i++){ highs[i] = (int)(Math.sin(init)*mid+mid); //这样成的时候,最大值是2*mid,最小值是0 init += interval; } for(int i=0;;i=(i+1)%width){ //无限循环 long start = System.currentTimeMillis(); while(System.currentTimeMillis()-start<highs[i]); //busy的部分 try { Thread.sleep(height-highs[i]); //idle的部分 } catch (InterruptedException e) { e.printStackTrace(); } } } public static void main(String[] args) { Solution s = new Solution(); s.drawSin(); } }
相关文章推荐
- 南京理工大学第八届程序设计大赛(校外镜像)
- EC修炼之道—按键的做法
- (OK) digui-gb18030-utf8.sh——递归
- Qt学习记录--04 Qt的对话框介绍
- java数据库连接类,已经把数据库操作的方法都封装好了
- iOS 阅读唐巧博客心得
- 20159318 《网络攻击与防范》第七周学习总结
- 第五次作业(2)
- webshell检测方法归纳
- 安装 ecshop后报错 Strict standards: Only variables should be passed by reference in
- 48_停止异步任务
- jquery 跨域 请求
- 47_TraceView的使用
- 带武器的角色类
- java日志组件介绍(common-logging,log4j,slf4j,logback )
- FZU-2214-Knapsack problem【01背包】
- 46_adb_ddms_aapt
- JavaScript对象的特性(Object Attribute)
- Python 练习实例33
- 45_DVM和Linux进程