首页 > 其他 > 详细

setInterval和setTimeout的区别

时间:2016-07-30 22:21:26      阅读:174      评论:0      收藏:0      [点我收藏+]

setTimeout递归执行的代码必须是上一次执行完了并间格一定时间才再次执行
比仿说: setTimeout延迟时间为1秒执行, 要执行的代码需要2秒来执行,那这段代码上一次与下一次的执行时间为3秒. 而不是我们想象的每1秒执行一次.

setInterval是排队执行的
比仿说: setInterval每次执行时间为1秒,而执行的代码需要2秒执行, 那它还是每次去执行这段代码, 上次还没执行完的代码会排队, 上一次执行完下一次的就立即执行, 这样实际执行的间隔时间为2秒

这样的话在我看来, 如果setInterval执行的代码时间长度比每次执行的间隔短的话,就没有意义,并且队伍越来越长,内存就被吃光了.如果某一次执行被卡住了,那程序就会被堵死

而setTimout以下写法不会出现因为一次被堵住,而内存被吃光的问题. 但是执行的时间隔是不准确和确定的

参考地址:http://www.php230.com/1412069161.html

setInterval和setTimeout的区别

原文:http://www.cnblogs.com/lcddjm/p/5721801.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!