免责声明,我对node.js的一些文章大部分归纳于此http://en.wikipedia.org/wiki/Node.js
那就是说,所以我的理解是它应该非常快,因为它避免了线程的开销。它将所有内容放在一个循环中,而不是在进程之间切换。
我认为有一个原因可以解决为什么在线程之间完全切换上下文的复杂方法。我的问题是,让线程超过node.js方法有什么好处?
答案 0 :(得分:2)
Node.js在IO密集型任务中非常快,因为它的事件模型完美支持IO延迟。另一方面,它完全无法在不停止一切的情况下执行CPU密集型任务。因此,如果你需要一些繁重的计算,你将需要分离一个工人为你做这件事。
无论线程在做什么,线程模型都会自动切换上下文,从而可以处理CPU密集型作业,而不会过多地影响其他线程。 (或者更确切地说,它们仍然有效,只有在达到CPU容量时才会更慢。)