Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么要避免使用事件循环执行CPU密集型任务?_Javascript_Node.js - Fatal编程技术网

Javascript 为什么要避免使用事件循环执行CPU密集型任务?

Javascript 为什么要避免使用事件循环执行CPU密集型任务?,javascript,node.js,Javascript,Node.js,在一篇教程中,我已经读到,应该主要针对I/O密集型任务使用节点的事件循环方法。比如读硬盘或者使用网络。但对于CPU密集型任务,不是 引用这些声明的具体原因是什么? 或者另一种方式问: 如果使用CPU智能任务占用Node.js,会发生什么情况?Node使用少量线程来处理许多客户端。在节点中有两种类型的线程:一种是事件循环(也称为主循环、主线程、事件线程等),另一种是工作线程池(也称为线程池)中的k个工作线程池 如果线程执行回调(事件循环)或任务(工作线程)需要很长时间,我们称之为“阻塞”。当线程被

在一篇教程中,我已经读到,应该主要针对I/O密集型任务使用节点的事件循环方法。比如读硬盘或者使用网络。但对于CPU密集型任务,不是

引用这些声明的具体原因是什么?

或者另一种方式问:


如果使用CPU智能任务占用Node.js,会发生什么情况?Node使用少量线程来处理许多客户端。在节点中有两种类型的线程:一种是事件循环(也称为主循环、主线程、事件线程等),另一种是工作线程池(也称为线程池)中的k个工作线程池

如果线程执行回调(事件循环)或任务(工作线程)需要很长时间,我们称之为“阻塞”。当线程被阻止代表一个客户端工作时,它无法处理来自任何其他客户端的请求


您可以在

中了解更多有关它的信息,它将阻止事件循环,并且您的应用程序将变得无响应。