如果我理解正確的節點JS是不可阻擋的...所以不是等待從數據庫或其他過程中它轉移到別的東西,並檢查回來以後的響應。抓節點JS替代多線程
另外它是單線程的。
所有這一切意味着給定的節點JS進程可以完全有效地利用單個CPU內核,但它不會使用機器上的任何其他內核,因爲它一次不會使用多個內核。
當然這意味着其它CPU仍然可以通過其它方法對於像SQL數據庫或其他有意分開CPU重子程序,只要它們是單獨的過程中使用。
也是在那個節點JS過程中有一個無限循環或長時間運行的功能的情況下,直到無限循環或長時間運行的功能被停止(或整個過程中被殺),該過程不再以任何方式有用。
是這樣嗎?我的理解是否正確?
「節點」 是_not_單線程。只有JS/V8引擎在單線程中運行。 NodeJS的libuv部分是多線程的。參見[是否NodeJS真的是單線程?](http://stackoverflow.com/questions/7018093/is-nodejs-really-single-threaded) – RaelB 2016-09-20 08:46:21
掛接http://stackoverflow.com/q/17959663/632951 – Pacerier 2017-02-19 18:53:42