gpt4 book ai didi

javascript - 为什么 ajax 轮询会随着时间的推移增加 CPU 使用率?

转载 作者:行者123 更新时间:2023-11-29 14:55:42 24 4
gpt4 key购买 nike

我有一个 Web 应用程序每 1 秒轮询一次服务器以获取数据以更新其显示。我看到浏览器的 CPU 使用率逐渐(一夜之间)从 6% 增加到 30%,没有应用程序交互或行为发生变化。

在 Chrome 上运行此代码很容易重现该问题,我将轮询间隔减少到 100 毫秒以获得更明显的效果:

<html>
<body>
<script>
var i = 0;
var xhr = new XMLHttpRequest();
xhr.onload = function() {
console.log("response", i++);
setTimeout(send, 100);
}
function send() {
xhr.open("GET", "/", true);
xhr.send();
}
send();
</script>

这段代码可以很容易地在任何网络服务器上运行,比如

python -m SimpleHTTPServer 8888

在这个例子中,CPU 使用率无缘无故地快速增加。我不做任何处理并使用 setTimeout 而不是 setInterval 所以我从来没有重叠的请求。

我正在使用 Chrome(和 Safari)进行测试,但仍然发现 CPU 使用率增长非常快。有什么想法吗?

最佳答案

因为您每 100 毫秒用新行填充控制台输出;)

关于javascript - 为什么 ajax 轮询会随着时间的推移增加 CPU 使用率?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18300652/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com