Javascript是单线程的。这意味着无论事件,超时或使用nextTick延迟,完成的任何计算都会阻塞整个过程。
如果您使用来分步处理
process.nextTick,就像
setTimeout(fn,0)在客户端上那样,以避免阻塞UI,则可以将工作量分散在更长的时间范围内,从而为其他功能的运行留出了空间。
但这是一个非常无效的解决方案-
总的工作量是相同的,分布在所有周期中(使每个请求的速度稍慢一些)。在实践中,任何预计需要花费数毫秒以上时间的计算都应分流到其他进程。为了最大化并发性,您应该
始终尽可能快地返回事件循环 。
child_process.fork()是几天前添加到v0.5的。它简化了子流程的创建和通信-不完全是Web
Workers的API,而是关闭的,请参阅URL
https://github.com/joyent/node/blob/master/doc/api/child_process.markdown。



