Skip to content

Commit 1a2b9f1

Browse files
ProfutWfhemberger
authored andcommitted
Update dont-block-the-event-loop.md
correct some small mistakes
1 parent 19717ac commit 1a2b9f1

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

locale/zh-cn/docs/guides/dont-block-the-event-loop.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -418,12 +418,12 @@ Node 由 `k` 个工作线程组成了工作线程池。
418418

419419
### 任务拆分
420420
具有可变时间成本的任务可能会损害工作池的吞吐量。
421-
为了尽量减少任务时间的丛台变化,应尽可能将每个任务 *划分* 为开销接近一致的子任务。
421+
为了尽量减少任务时间的变化,应尽可能将每个任务 *划分* 为开销接近一致的子任务。
422422
当每个子任务完成时,它应该提交下一个子任务;并且当最终的子任务完成时,它应该通知提交者。
423423

424424
继续使用 `fs.readFile()` 的示例,更好的方案是使用 `fs.read()`(手动拆分)或 `ReadStream`(自动拆分)。
425425

426-
同样的原理也适用于 CPU 密集型任务; `asyncAvg` 示例可能不适用于事件循环,但它非常适合于工作行哦啊线程池
426+
同样的原理也适用于 CPU 密集型任务; `asyncAvg` 示例可能不适用于事件循环,但它非常适用于工作线程池
427427

428428
将任务拆分为子任务时,较短的任务将拆分为少量的子任务,而更长的任务将拆分为更多的子任务。
429429
在较长任务的每个子任务之间,分配给它的工作线程可以调度执行另一个更短的任务拆分出来的子任务,从而提高工作池的总体任务吞吐量。
@@ -468,7 +468,7 @@ Node 由 `k` 个工作线程组成了工作线程池。
468468
## 总结
469469
Node 有两种类型的线程:一个事件循环线程和 `k` 个工作线程。
470470
事件循环负责 JavaScript 回调和非阻塞 I/O,工作线程执行与 C++ 代码对应的、完成异步请求的任务,包括阻塞 I/O 和 CPU 密集型工作。
471-
着两种类型的线程一次都只能处理一个活动
471+
这两种类型的线程一次都只能处理一个活动
472472
如果任意一个回调或任务需要很长时间,则运行它的线程将被 *阻塞*
473473
如果你的应用程序发起阻塞的回调或任务,在好的情况下这可能只会导致吞吐量下降(客户端/秒),而在最坏情况下可能会导致完全拒绝服务。
474474

0 commit comments

Comments
 (0)