利用JavaScript检测CPU使用率自己写的

 这篇文章主要介绍了自己写的一个利用JavaScript检测CPU使用率的方法,需要的朋友可以参考下

之前在玉伯的Github Issues里看到了使用JS检测CPU使用率的方法,觉得很赞。 
特别自己实现了一下,另外加了一个绘制直方图的功能可以直观看到CPU使用率的情况。 
 
效果请见:传送门 
 
实现思想 
 
其实就是setInterval,利用当前时间减去上一次执行timer记录的时间,得到时间差来反映CPU的延迟,侧面反映了CPU的使用率。 
代码如下:
var data = [],t; 
var cpuTimer = setInterval(function(){ 
t && data.push(Data.now()-t); 
t = Data.now(); 
},500); 
 
理论上得到data应为[500,500,500,500,500...],但实际上CPU肯定会略微延迟,data可能为[501,502,502,501,503...]。如果CPU使用率很高的话,延迟会很大,data就会变为[550,551,552,552,551...]。通过判断data的变化可以初步推断CPU的使用率。 
 
使用直方图直观表示CPU使用率 
 
我们通过绘制data的直方图,可以看到数据的波动情况。当直方图中某一时段数值陡升,证明那一时刻CPU使用率较高。 
 代码如下:
function drawHisto(data){ 
var cvs = document.getElementById('canvas'); 
ctx = cvs.getContext('2d'); 
var width = cvs.width, 
height = cvs.height, 
histoWidth = width / size; 
 
// 重绘直方图 
ctx.fillStyle = "#fff"; 
ctx.fillRect(0,0,width,height); 
ctx.beginPath(); 
ctx.lineWidth = histoWidth/2; 
ctx.strokeStyle = '#000'; 
for( var i = 0, len = data.length; i < len; i++){ 
var x = i * histoWidth, 
// +5、/20、-10只是为了显示效果, 
// ~~为数值取整相当于Math.floor() 
y = ~~( (data[i] - speed + 5) / 20 * (height-10) ); 
ctx.moveTo( x+histoWidth/2, height ); 
ctx.lineTo( x+histoWidth/2, height-y ); 
ctx.stroke(); 


 

时间: 2024-09-18 12:17:34

利用JavaScript检测CPU使用率自己写的的相关文章

利用JavaScript检测CPU使用率自己写的_javascript技巧

之前在玉伯的Github Issues里看到了使用JS检测CPU使用率的方法,觉得很赞. 特别自己实现了一下,另外加了一个绘制直方图的功能可以直观看到CPU使用率的情况. 效果请见:传送门 实现思想 其实就是setInterval,利用当前时间减去上一次执行timer记录的时间,得到时间差来反映CPU的延迟,侧面反映了CPU的使用率. 复制代码 代码如下: var data = [],t; var cpuTimer = setInterval(function(){ t && data.p

用 JavaScript 检测 CPU 占比和内存泄露

作者:玉伯   最近在项目中碰到 IE6-7 下的内存泄露,通过 Drip 能探测出来,问题也解决了.最近小组成员同时有在做前端质量工具,通过性能检测,可以排查出一些耗时较长的代码,但对内存泄露想不到好的自动化探测方式.本着集思广益的初衷,发了条微博: 通过 setTimeout 等方式,可以检测当前页面所在操作系统 CPU 的大体情况.请教万能的微博:有没有什么办法,通过 JavaScript 检测到当前页面所在操作系统的内存使用情况(比如是否持续上涨.存在内存泄露)?   CPU 占比探测

JavaScript获取当前cpu使用率的方法_javascript技巧

本文实例讲述了JavaScript获取当前cpu使用率的方法.分享给大家供大家参考,具体如下: 想获取当前系统cpu的使用率,如果允许使用hta,可以使用以下的代码获取当前cpu的使用率(较为精确) setInterval(function() { var locator=new ActiveXObject ("WbemScripting.SWbemLocator"); var service=locator.ConnectServer("."); var cpu=

运行效率-为程序分配更多系统资源,或者说怎样提高一个程序的cpu使用率?

问题描述 为程序分配更多系统资源,或者说怎样提高一个程序的cpu使用率? 写了一个图像识别程序,就是运行效率太低,想给程序分配更多的cpu时间让他运行快点. 那些大型游戏是采用什么机制能够占那么多的系统资源的? 解决方案 采用多线程.如果你不用多线程,你只能用 1/计算机逻辑cpu数量 的cpu占用率. 解决方案二: 也要看语言的,像Java/C语言都是可以100%调用CPU的,而Python是不能的,. 解决方案三: 1.多线程,比如线程1处理第一部分,线程2处理第二部分,,,协调好,另外如果

RDS SQL Server - 最佳实践 - 高CPU使用率系列之索引缺失

摘要 CPU高使用率往往会导致SQL Server服务响应缓慢,查询超时,甚至服务挂起僵死,可以说CPU高使用率是数据库这种后台进程服务的第一大杀手.本系列文章之一的"索引缺失"就是CPU高使用率的最常见的原因之一. 问题引入 "鸟啊,我们平时在服务阿里云RDS SQL Server客户的过程中,遇到最多的一个问题就是,客户反馈RDS SQL Server数据库CPU使用率很高(有时超过90%,甚至到100%),导致查询缓慢甚至超时,这类问题要如何解决啊?".老鸟已

JavaScript网站设计实践(四)编写about.html页面,利用JavaScript和DOM,选择性的显示和隐藏DIV元素

原文:JavaScript网站设计实践(四)编写about.html页面,利用JavaScript和DOM,选择性的显示和隐藏DIV元素 一.现在我们在网站设计(三)的基础上,来编写about.html页面. 这个页面要用到的知识点是利用JavaScript和DOM实现选择性地显示和隐藏某些DIV about.html页面在前面我们为了看导航栏菜单项高亮显示时,已经写了部分内容,只是那时写的代码没有实现div显示和隐藏,现在就在之前编写的基础上,为页面添加显示和隐藏div的效果. 没有写Java

利用JavaScript创建功能强大的GUI

javascript|创建 大多数的计算机用户都非常熟悉Windows的图形用户界面(GUI),都通过使用Word或微软的电子邮件客户端软件了解了按钮.工具条.标签,但与客户端软件都拥有几乎一致的界面截然不同的是,我们可以发现,每个网站的界面都各不相同.用户需要学会如何使用每一种互联网应用程序.尽管大多数的互联网应用程序都不是太复杂,但一个用户需要不断地去学习应用程序界面,时时感觉自己象个新手,这对于用户而言,毕竟不是一件令人愉快的事. 通过利用javascript和CSS建立互联网应用程序或网

CPU使用率100%怎么解决?

我们在使用WindowsXP操作系统的时候,用着用着系统就变慢了,一看"任务管理器"才发现CPU占用达到100%.这是怎么回事情呢?遇到病毒了,硬件有问题,还是系统设置有问题,在本文中笔者将从硬件,软件和病毒三个方面来讲解系统资源占用率为什么会达到100%. 经常出现CPU占用100%的情况,主要问题可能发生在下面的某些方面: CPU占用率高的九种可能 1.防杀毒软件造成故障 由于新版的KV.金山.瑞星都加入了对网页.插件.邮件的随机监控,无疑增大了系统负担.处理方式:基本上没有合理的

主板不能检测cpu温度怎么解决

  主板不能检测cpu温度的解决方法: 因为CPU在BIOS下功耗很少,并不能真正反映工作温度 所以进入操作系统,利用软件辅助 点击打开[百宝箱] 在百宝箱里找到[硬件检测]工具 这里可以看到,CPU的温度高了一度 随着用的时间越来越长,CPU的温度可能会上升,要注意哦