我正在编写一个基本上调用PHP页面并请求一些信息的AJAX脚本。 PHP页面查询数据库。我想将页面设置为每5分钟拨打一次电话,但我知道如何操作的唯一方法是使用settimeout函数。我想知道这个settimeout功能是否一直在运行,这会对页面的性能造成严重影响吗?还有另外一种方法吗?
答案 0 :(得分:1)
使用setInterval
。它们应该呈现相同的结果(~0性能损失),但setInterval
是显而易见的方法。
想想Google Wave:他们会为您输入的每个字母发送一个AJAX请求,但它根本不会感到缓慢,因此每5分钟发出一次请求就不算什么了。
答案 1 :(得分:1)
我真的不知道问题是setTimeout,也许是你构建脚本的方式。
实际上,大部分时间setTimeout都是首选的,因为setTimeout会等待你的脚本执行,setInterval会在每个时间间隔内执行而无需等待。
请看这里的底部:
https://developer.mozilla.org/En/Window.setInterval
If there is a possibility that your logic could take longer to execute than the interval time, it is recommended that you recursively call a named function using window.setTimeout.