我正在使用JavaScript,我希望在浏览器负载很重时测试我的脚本的性能。我想要使用的方法是运行一个脚本,使浏览器使用50%的CPU(当然是单核),而不是判断脚本的性能是否为可以接受的。我的脚本在光标位置的画布上绘制,因此Firefox和Chrome开发人员工具中的简单数字不足以衡量响应度。
目前我知道下面的代码会导致100%的CPU使用率,我怎样才能使它只使用50%?
<script type="text/javascript">
while (loop = true) {
loop = true;
}
</script>
答案 0 :(得分:0)
现在被问到的问题可以回答为:只要JS是单线程的 - 这意味着任意循环消耗的CPU数量并不重要。只是因为之后运行 - 运行之后,当CPU未加载时。
答案 1 :(得分:0)
写一个小型库以利用您描述的问题,然而您可以将其更改为消耗50%的CPU来测试您的应用程序是否仍然以您想要的平滑度运行。
它基本上是一个&#34;线程管理器&#34; (其中一个线程是一个繁重操作的实例,它已被编写为在迭代中运行,因此只要CPU需要执行其他操作,例如渲染UI或运行其他脚本操作,它就可以暂停)。您可以创建一个永不完成的线程,并将经理优先级设置为50%,以模仿您在问题中描述的情况。
它在GitHub上有文档和基本示例,您应该可以轻松调整以执行上述操作: