百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
S

setImmediate

> 编程语言
开源

新的 setImmediate API 的跨浏览器实现。

1.3K stars0 点赞3 次浏览
访问官网GitHub

工具介绍

新的 setImmediate API 的跨浏览器实现。

setImmediate.js 是一个高度跨浏览器的 setImmediate 和 clearImmediate API 实现,由 Microsoft 提交给 Web 性能工作组。setImmediate 允许脚本让步于浏览器,以异步执行某项操作,这种方式通常比常规的 setTimeout(..., 0) 模式更高效,且耗电更少。

  • Internet Explorer 6+ * Firefox 3+ * WebKit * Opera 9.5+ * Node.js * 那些支持 MessageChannel 的浏览器中的 Web 工作者, 我无法找到关于这些的可靠信息。

setImmediate API 按照规定提供了对环境的 [任务队列][] 的访问权限,有时也称为其"宏任务"队列。这与 MutationObserver 等 Web 功能、 Promise 和 Object.observe 等语言功能以及 process.nextTick 等 Node.js 功能使用的 [微任务队列][] 截然不同。宏任务队列每次循环都会在处理完所有已排队的任务后返回到事件循环,即使宏任务本身还排队了更多的宏任务。而微任务队列则会一直执行已排队的微任务,直到排队任务耗尽。

实际上,这意味着如果在另一个使用 setImmediate 队列的任务中调用 setImmediate,则会回到事件循环,并在这些调用之间执行任何需要进行的 I/O 或渲染任务,而不是尽快执行队列中的任务。

在 0.9 以下的 Node.js 版本中,setImmediate 不可用,但 [process.nextTick][nextTick] 可用,并且在这些版本中,process.nextTick 使用宏任务语义。因此,我们使用它来替换 sup

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

JavaScript

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言