位置: 编程技术 - 正文
推荐整理分享快速掌握Node.js中setTimeout和setInterval的使用方法(快速掌握阅读题的技巧),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:快速掌握知识的方法,快速掌握阅读题的技巧,快速掌握阅读题的技巧,快速掌握化学方程式配平图文,快速掌握阅读题的技巧,快速掌握押韵技巧,快速掌握英语的方法,快速掌握英语的方法,内容如对您有帮助,希望把文章链接给更多的朋友!
Node.js和js一样也有计时器,超时计时器、间隔计时器、及时计时器,它们以及process.nextTick(callback)函数来实现事件调度。今天先学下setTimeout和setInterval的使用。
一、setTimeout超时计时器(和GCD中的after类似)
在node.js中可以使用node.js内置的setTimeout(callback,delayMillSeconds,[args])方法。当调用setTime()时回调函数会在delayMillSeconds后
执行.setTime() 会返回一个定时器对象ID,可以在delayMillSeconds到期前将ID传给clearTimeout(timeoutId)来取消。
如果将clearTimeout(mytimeout);这行注释之后可以看到是会执行myfunc()。
二、setInterval间隔计时器(和GCD中的dispatch_source_t或NSTimer类似)
间隔计时器用来按定期的时间间隔来执行工作.和setTimeout类似,node.js中内置setInterval(callback,delayMilliSecond,[args])来创建并返回定时器对象Id,通过clearInterval()来取消。
上面代码是创建setInterval的回调函数myfunc,参数为Interval,setInterval每隔1s执行一次,setTimeout是在5秒之后执行,它的回调函数让间隔计时器取消。
三、从事件循环中取消定时器引用
当事件队列中仅存在定时器回调函数时,如果不希望再执行它们,可以使用setInterval和setTimeout返回对象的unref()函数来通知事件循环不要继续。
当unref()和setTimeout结合使用,要用独立计时器来唤醒事件循环,大量使用对性能也会产生影响,应尽量少用。
四、setTimeout和setInterval执行时间是不精确的
它们是间隔一定时间将回调添加到事件队列中,执行也不是太精确
以上代码多执行几次输出的结果也是不一样的。
标签: 快速掌握阅读题的技巧
本文链接地址:https://www.jiuchutong.com/biancheng/370709.html 转载请保留说明!友情链接: 武汉网站建设