nodejs 实现类似sleep延时执行的方法

在 Node.js 中,没有类似于传统编程语言中的 sleep() 函数,因为 Node.js 是单线程的。
但是可以使用 setTimeout() 函数实现暂停执行,从而实现类似于 sleep() 的效果。
下面是一个示例:

function sleep(ms) {
  return new Promise(resolve => setTimeout(resolve, ms));
}

async function main() {
  console.log('开始休眠');
  await sleep(2000); // 休眠 2 秒
  console.log('休眠结束');
}

main();

在上面的示例中,我们定义了一个 sleep() 函数,它返回一个 Promise 对象,
然后使用 setTimeout() 函数等待一段时间后,将 Promise 对象状态改为 resolved,
从而让 await 命令等待 Promise 对象状态改变,实现暂停执行的效果。

posted @ 2023-02-17 16:10  盘思动  阅读(1770)  评论(0编辑  收藏  举报