0

我是 ajax 轮询的新手,我实现了连续获取数据,但我遇到的问题是内存使用率和 CPU 使用率不断增加,最后浏览器崩溃。这是我用来连续获取数据的 ajax 调用。

$(document).ready(function () {

make_call();
function make_call() {
$.ajax({
url: "url",
              accepts: "application/json",
              cache: false,
              success: function (result) { // Some code here },
complete: make_call
});
}
}

有没有其他选择,或者我做错了什么。请提供一些建议或解决方案。提前致谢 。

4

1 回答 1

0

您的代码在先前请求完成的同时初始化一个新请求(完成是错误或成功)。您可能希望在请求新数据之前有一点延迟 - 这样做可以减少服务器和客户端的负载。

$.ajax({
  // ...
  complete: function() {
    setTimeout(make_call, 5000);
  }
});

上面的代码在发出下一个请求之前等待 5 秒。根据您对“连续”的需求调整值。

于 2013-04-04T15:28:54.543 回答