sleep() 函數(shù)的調(diào)用需要一個(gè)時(shí)間作為參數(shù),代表程序執(zhí)行掛起的時(shí)間間隔。
列子:
/**
* @param {number} millis
*/
async function sleep(millis) {
return new Promise(reslove => setTimeout(reslove, millis))
}
/**
* let t = Date.now()
* sleep(100).then(() => console.log(Date.now() - t)) // 100
*/
** 用處 **
- 在某些需要等待一段時(shí)間后再執(zhí)行的情況下,使用睡眠函數(shù)可以暫時(shí)釋放 CPU 資源,減少系統(tǒng)負(fù)擔(dān),提高系統(tǒng)的性能和穩(wěn)定性。
- 時(shí)候需要在程序中控制線(xiàn)程或進(jìn)程的執(zhí)行順序,使用睡眠函數(shù)可以讓某個(gè)線(xiàn)程或進(jìn)程暫停一段時(shí)間后再執(zhí)行,從而實(shí)現(xiàn)對(duì)程序執(zhí)行順序的控制。
- 通過(guò)睡眠函數(shù)可以實(shí)現(xiàn)定時(shí)任務(wù)的功能,例如定時(shí)執(zhí)行某些操作、定時(shí)發(fā)送消息等,能夠幫助程序員實(shí)現(xiàn)一些自動(dòng)化的功能