Tag: 处理器

NodeJS:理解非阻塞/事件队列/单线程

我是新来的节点,并尝试了解节点的非阻塞性质。 在下面的图片中,我创build了一个高层次的请求图。 据我所知,一个单一的应用程序的单个用户的所有进程运行在一个单一的线程。 我想要了解的是事件循环的逻辑如何适合这个图。 事件循环是否与指令排队的处理器pipe道相同? 想象一下,我们将一个应用程序页面加载到RAM中,从而创build一个可供程序读取的stream: readstream.on('data', function(data) {}); 有关创build读取stream和等待数据发生的指令:该指令是否在处理器中“挂起”在寄存器中(等待I / O完成),而在multithreading环境中,处理器不会从中获取新的指令RAM,直到以前的I / O请求的结果已经返回到RAM? 或者是我看到这完全/部分错误的方式? 只是一个补充(相关的,也许是愚蠢的)问题:在服务器上的不同线程上运行不同的用户,而不是单一线程的好处只有一个用户? 我是新来的这种types的细节,所以请问,如果这个问题不完全对你有意义。 但理解这一点对我来说似乎是必不可less的。