node中的process.nextTick 与 js定时器调用的原理区别问题?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

node中的process.nextTick 与 js定时器调用的原理区别问题?

2016-03-13 18:07:34 2424 1

按照《JavaScript高级程序设计》中关于定时器的描述,我觉得定时器也是需要等待之前事件队列中的事件执行完毕,才会执行定时器任务。
直到在看到《node.js高级编程》一书,上面有这么一段话
screenshot
process.nextTick不也是需要等待之前事件队列中的事件执行完毕,才会执行回调函数吗?为什么比定时器好呢?
还有激活JavaScript的超时队列是什么东西?跟事件队列一样吗?

取消 提交回答
全部回答(1)
  • a123456678
    2019-07-17 19:02:57

    不就是setTimeout喽!!翻译一下不就是“超时”嘛。

    至于process.nextTick为什么比setTimeout块,大概说下吧:

    process.nextTick把回调函数放到了事件队列的顶部,于是,当前同步代码(牛人们常说的执行栈)执行完毕后,从事件队列里挑回调函数时,最先被挑中的就是他了。顶部好理解吧?多个异步任务丢到了事件队列里,总有个先后的,顶部就是最前面。

    setTimeout比他慢好理解了么,这个东西再怎么设置超时时间为0,在事件队列里他也总在process.nextTick的后面。

    说的不是很专业,但意思差不多了。如果需要更精准答案,最好google一下,或者翻node源码

    0 0
相关问答

1

回答

我现在做了资源限制,注入pod的cpu负载,还是node节点的cpu负载上去了 ,最新版本的 1.7

2022-09-13 21:24:41 154浏览量 回答数 1

1

回答

我注入的是pod cpu 为什么node节点的cpu满了?

2022-09-10 12:16:56 116浏览量 回答数 1

1

回答

容器服务提供的虚拟节点(Virtual Node)功能有什么作用?

2022-08-25 14:45:19 423浏览量 回答数 1

1

回答

Node节点中kubelet组件的作用是?

2022-05-10 17:21:40 71浏览量 回答数 1

1

回答

在 Node 类中如何处理节点数据呢?

2022-04-03 09:16:01 831浏览量 回答数 1

2

回答

有没有必要提前在节点上包括新建的 Node 上预热?

2022-01-20 16:00:26 2525浏览量 回答数 2

1

回答

什么是节点属性 (node attributes)?

2021-12-14 16:11:56 298浏览量 回答数 1

1

回答

Druid的组成部分Realtime node的实时节点处理流程具体是什么?

2021-12-09 20:36:08 128浏览量 回答数 1

1

回答

kubectl中查看node节点列表的命令是什么呀?

2021-10-28 21:46:19 285浏览量 回答数 1

1

回答

k8s中容器遇到问题一直在重启,导致node节点负载高,问下大家是怎么解决的?#K8S

2020-07-30 14:58:10 1146浏览量 回答数 1
+关注
文章
问答
问答排行榜
最热
最新
相关电子书
更多
JS 语言在引擎级别的执行过程
立即下载
编程语言如何演化—— 以 JS 的 private 为例
立即下载
Python第五讲——关于爬虫如何做js逆向的思路
立即下载