在单片机中,延迟的概念常用于执行程序。
功能是短时间停止程序,延迟从几秒到几毫秒甚至几微秒,在做驱动的时候对实现计时有非常重要的作用。
例如,Arduino中经常使用延迟(ms)功能。
在Nodejs中,每个人都必须说对应的是setTimeout。虽然它可以延迟执行,但它与使用中的延迟有点不同。
我们先来看看实施效果。
这是一个循环输出,每次输出等待1秒。
代码实现
先用承诺做一个延迟函数的方法
let wait = ms = gt新承诺(resolve = gtsetTimeout(resolve,ms));在setTimeout的帮助下,它解析承诺的结果在指定的时间后达到延迟 # 34;回拨 # 34;的效果
相当于给了一个承诺,规定时间后执行结果。
具体怎么用:
(async()= gt;{ console . log( # 34;开始 # 34;);等待等待(1000);//延迟console.log秒( # 34;那是在1s # 34);) ()这样,在输出 # 34;开始 # 34;之后,系统会等待1秒钟才输出 # 34;那是在1s # 34
这里是本文开头的完整示例代码。
设delayms = 1000//ms延迟时长,单位:ms let wait = ms = >;新承诺(resolve = gtsetTimeout(resolve,ms));console . time( # 34;延迟时间 # 34;);//记录节目开始时间(async()= >;{ for(设I = 0;我 lt10;i++){ await wait(delay ms);//让程序等待console . log( # 34;...#34;,我);//输出调试信息} console . log( # 34;...完成 # 34;);console . time end( # 34;延迟时间 # 34;);//计算并输出程序运行所消耗的总时间})();问我这个有什么用?
如果你能自然地使用它,你就知道如何使用它,在哪里使用它[憨笑]
操作环境:
Node -vv14.17.0这一期是酱紫[做鬼脸]
复杂问题的简化
一次只专注一个知识点。
对技术感兴趣的朋友可以关注我,我会经常分享各种奇怪又实用的技术知识。