我聽說MongoDB和其他Node.js程序速度很快的原因是因爲它們與異步同時執行所有操作,但是當我運行一個Node程序時,我只能在系統上看到一個線程。怎麼了?他們還沒有完成這個功能嗎?如果沒有,這怎麼可能比PHP/Apache更快,他們將運行許多線程,而不是浪費系統資源閒置?Node.js只使用一個線程,是異步破壞?
-1
A
回答
1
異步與多線程不一樣。這是兩件不同的事情。
異步是指線程在做其他事情之前不需要等待函數調用的響應。但是,您可以將異步與多線程混合使用,但這並不意味着它們是相同的。
1
異步編程並不一定意味着多線程。
異步只意味着數據可以間歇性地傳輸,而不是穩定的數據流。
例如,Javascript是一個使用異步通信的單線程運行時。
0
您也可以在node.js中有multiple processes和/或workers。
相關問題
- 1. Node.js的MySQL的模塊 - 異步IO或者只是線程
- 2. 線程被破壞?
- 3. 破壞Java線程
- 4. 異步使用線程池?
- 5. 即使組件被破壞,異步過程是否完成如期完成
- 6. mongoid版本不能破壞只是一個單一版本
- 7. 總是使用線程池線程進行異步連續
- 8. Node.js插件對象破壞
- 9. 異步/等待只有多線程?
- 10. 異步等待一個線程完成
- 11. 異步/等待另一個線程ID
- 12. 異步結果在另一個線程
- 13. 異步線程
- 14. Node.js readline以同步方式?或者是一個異步循環?
- 15. Node.Js異步用法
- 16. 爲什麼不能破壞只是一個會話
- 17. 是Node.js Array.map()異步嗎?
- 18. 是node.js的console.log異步?
- 19. node.js中的異步流程
- 20. 使用異步睡眠在一個線程沒有凍結
- 21. 使用Java線程的異步調用
- 22. Textmate破壞了我的Java?異常在線程「主要」 java.lang.NoClassDefFoundError
- 23. Node.js的異步一致性
- 24. 線程與異步調用
- 25. node.js與redis:同步還是異步?
- 26. 異常是否破壞封裝?
- 27. VC++ - 異步線程
- 28. 線程或異步?
- 29. 使用FPM在PHP7上異步/線程
- 30. 使用RoboSpice進行異步線程
線程與異步無關。你需要閱讀http://blog.slaks.net/2014-12-23/parallelism-async-threading-explained/ – SLaks
我確實很喜歡這個問題。 –