javascript - Promise 函数中的阻塞操作是否会阻塞 nodejs 中的事件循环?
问题描述
将阻塞操作包装在 Promise 中是否仍会阻塞事件循环?例如,如果我将一个阻塞系统调用包装在一个 Promise 中并在阻塞系统调用结束时返回一个 resolve(),它会保持事件循环运行吗?
let a = new Promise((resolve, reject) => {
// run blocking synchronous function here
resolve();
}).then() {
// continue after promise solved
}
// running a periodic 'blinker'
setInterval(() => {
console.log('another second has passed');
}, 1000)
如果阻止呼叫花费的时间比这更长,消息会每秒不断弹出吗?
解决方案
推荐阅读
- javascript - 根据用户代理字符串转换链接
- python - 在 Odoo 中添加具有默认值的新布尔字段
- r - 使用 glmnet 的多项岭回归给出的结果概率高于 1,而对于不同的目标类别为负,知道为什么吗?
- python - 为什么我在尝试访问 HttpRequest.POST['choice'] 值时收到 TypeError?我该如何解决这个错误?
- python - numpy.einsum('ij,ji', a, b) 性能问题
- sql - 使用交叉表功能透视 SQL 表
- database - 规范化中的候选键
- android - 为什么片段不显示空白屏幕?
- ruby-on-rails - 如何通过助手传递标题?
- c# - “Microsoft.SqlServer.Management.Smo”库中“Database”类的方法“InitTableColumns”有什么作用?