javascript - 如果密集使用 setImmediate 会不会有任何不良影响?
问题描述
我的问题是,使用密集的 setimmediate 会对性能产生负面影响吗?我已经制作了算法的简化示例代码。每次收到http请求时都会执行类似的代码。
const wrapper = (next, handler) => {
const val = handler(next)
console.log('exec', handler.name)
if (val !== undefined) {
console.log(val)
}
}
const dispatch = (i, ...handlers) => {
const handler = handlers[i]
const next = () => {
dispatch(++i, ...handlers)
}
wrapper(next, handler)
// setImmediate(wrapper, next, handler)
}
const pass = (next) => {
next()
}
const greet = () => {
return 'hello'
}
dispatch(0, pass, greet)
/**
output whiout setImmediate:
exec greet
hello
exec pass
output whit setImmediate:
exec pass
exec greet
hello
*/
解决方案
它可能不会,但通过运行基准测试和负载测试来衡量影响将是确认的最佳方式,因为可能会有一些意想不到的影响。
推荐阅读
- java - AWS ProfileCredential 提供 AWS SDK1 VS AWS SDK 2 JAVA
- excel - VBA 将工作表上的跟踪号链接到网站
- python - 符号搜索:如何排除 html/js 文档文件或仅包含 `.py` 模块?
- mysql - 在 sql 中将分层数据作为列查看
- c - 分配一大块内存并事后管理它
- javascript - 如何在返回值之前等待 Cypress then() 命令完成?
- sql - 用于发送电子邮件 dbmail 的用户授权
- c# - FirstOrDefault() 导致 Collection 被修改;枚举操作可能无法执行。例外
- snowflake-sql - 在特定事件之后的行 FOR A KEY
- php - 使用googlespreadsheet api v4批量更新单个单元格?