node.js - 问一个小白的问题,nodejs是单线程的,可是为什么支持开启子进程?
PHPz
PHPz 2017-04-17 11:08:47
0
1
475

这个问题可能显得很小白,可是我还是不太懂,网上说到nodejs大多是单线程,异步回调,IO非阻塞云云,感觉说的很有道理的样子,也能看进去一点,可是还是很迷茫。从学校学到知识线程是基于进程的。说nodejs是单线程,可是他有child_process支持开启子进程,这不就是多进程吗?多进程不就是意味着多线程?...

小白一个,求解释啊

PHPz
PHPz

学习是最好的投资!

全部回覆(1)
大家讲道理
  1. 單線程還是多線程一般是指單個進程內隻有一個線程還是有多個;
  2. nodejs 進程本身並不隻有一個線程,我這裏 node v0.10.26 隻開解釋器會有兩個線程;
  3. 說 nodejs 是單線程是從使用角度說的,通常的 nodejs 程序寫起來就好像隻有一個線程在跑(不管底層實際上有幾個線程在工作);
  4. nodejs 程序通常是單進程的,很少會使用「多進程」模式,即開啟多個進程協同工作。這並不意味著 nodejs 沒有開啟多個進程的能力。
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板