我正在编写一个web应用程序(HTML/CSS/JS前端,C#后端),预计用户会在同一个页面上停留一段时间(通常超过10分钟)。我想定期检查服务器,看看用户的会话是否已过期。使用间隔为2-5分钟的setInterval向服务器发出AJAX请求有什么缺点吗?
发布于 2012-08-14 00:40:41
不,这没有什么坏处。但是,计时器并不是最精确的。另请参阅:Will setInterval drift?这对你来说可能无关紧要,因为它是一个更大的问题,因为定时器快速启动。另外,听起来准确的时间对你来说也不是问题。
发布于 2012-08-14 00:45:16
这样做没有问题。只有当您不保留间隔ids并同时运行多个间隔时(特别是当延迟非常小时),才会出现性能问题。要防止出现这种情况,您可以在创建新间隔之前清除当前间隔。这确保了只有所需的时间间隔是有效的。
clearInterval(intervalID);
intervalID = setInterval(function(){
...
}, 100); https://stackoverflow.com/questions/11938549
复制相似问题