国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

nodejs事件輪詢機(jī)制

2022-10-19 10:19 作者:對白淺淺  | 我要投稿


//nodejs時(shí)間輪詢機(jī)制 ? ?此程序?yàn)镴S文件,要在nodejs環(huán)境中運(yùn)行


setTimeout(function(){

? ? console.log('setTimeout被執(zhí)行')

},0)


setImmediate(function(){

? ? console.log("setImmediate被執(zhí)行")

})


process.nextTick(function(){

? ? console.log("processs.nextTick被執(zhí)行")

})


// 執(zhí)行順序?yàn)?

// processs.nextTick被執(zhí)行

// setTimeout被執(zhí)行

// setImmediate被執(zhí)行


// 底層實(shí)現(xiàn) ? 借助 libuv(一個(gè)C語言寫的庫) ?libuv/src/unix/core.c中的uv_run


// 時(shí)間輪輪詢機(jī)制分為6個(gè)階段

// 1.timers 定時(shí)器階段

// ? ? 計(jì)時(shí)和執(zhí)行到點(diǎn)的定時(shí)器回調(diào)函數(shù)

// 2.pendding callbacks

// ? ? 某些系統(tǒng)操作(例如TCP錯(cuò)誤類型)的回調(diào)

// 3.idle.prepare

// ? ? 準(zhǔn)備工作

// 4.poll 輪詢階段

// ? ? 如果輪詢隊(duì)列不為空,依次同步取出輪詢隊(duì)列中的第一個(gè)回調(diào)函數(shù)執(zhí)行,直到輪詢隊(duì)列為空或者達(dá)到系統(tǒng)最大的限制

// ? ? 如果輪詢隊(duì)列為空

// ? ? ? ? 如果之前設(shè)置過setImmediate函數(shù)

// ? ? ? ? ? ? 直接進(jìn)入到下個(gè)check階段

// ? ? ? ? 如果沒有設(shè)置過setImmediate函數(shù)

// ? ? ? ? ? ? 在當(dāng)前poll階段等待

// ? ? ? ? ? ? ? ? 直到輪詢隊(duì)列添加回調(diào)函數(shù),就去第一個(gè)情況執(zhí)行

// ? ? ? ? ? ? ? ? 如果定時(shí)器到點(diǎn)了,也會去下個(gè)階段

// 5.check 檢查階段

// ? ? 執(zhí)行setImmediate設(shè)置的回調(diào)函數(shù)

// 6.close callbacks 關(guān)閉階段

// ? ? 執(zhí)行close事件回調(diào)函數(shù)


nodejs事件輪詢機(jī)制的評論 (共 條)

分享到微博請遵守國家法律
图们市| 长丰县| 徐闻县| 普兰县| 汉阴县| 晴隆县| 海伦市| 固镇县| 清水河县| 邛崃市| 蒲城县| 靖边县| 扶绥县| 浦县| 佛冈县| 隆昌县| 东源县| 柳江县| 日照市| 永春县| 涡阳县| 集贤县| 永年县| 甘南县| 阿克苏市| 兴化市| 图片| 张家口市| 苏尼特左旗| 梅州市| 南京市| 石嘴山市| 红原县| 盐城市| 咸阳市| 福鼎市| 会宁县| 恩施市| 英超| 青铜峡市| 星座|