Node.js 是否取消了多线程?

Has Node.js Abstarcted that multithreading?

大家好, 我是 Node.js 的新手,有疑问需要解决...

我的问题是当 node js 是单线程和非阻塞时请告诉我这个场景。 就像当 client1 向 Node 的主线程发送从 DB 获取数据的请求时,Node 将任务分配给线程池,并表示线程池中的 T1 线程将通过访问 DB 中的数据来执行该任务... .同时让另一个客户端说client2从数据库请求一些数据到主线程并且节点将该任务也分配给线程池所以说T2也去同一个数据库获取数据但T1仍然没有完成访问数据来自 DB .. 所以 T2 基本上是在等待,对吗? N 个人还分享了一些关于 Node.js 和基本编程示例的好视频和文档..

谢谢

JavaScript 中没有线程池。为什么您会期望在 NodeJS 环境中使用一个比 V8 稍大一点的环境?

并发(不是多线程)是通过事件循环而不是线程完成的。在您的示例中,如果您没有到数据库的连接池,是的,T2 将等待 T1 完成 数据库连接 。仍然没有线程元素,限制是您的数据库连接很可能不是多路复用查询。