Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.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
node.js挂起mac上的其他程序_Node.js - Fatal编程技术网

node.js挂起mac上的其他程序

node.js挂起mac上的其他程序,node.js,Node.js,我对Node和javascript比较陌生。我正在运行一个程序,执行大量的网络api调用并处理结果。我所经历的是,我的节点代码使在我的mac上运行的其他程序(Outlook、Chrome等)没有响应,以至于我甚至无法强制退出这些程序,不得不硬重启我的机器 知道为什么会这样吗?我认为node.js有点沙盒化,不应该影响其他程序。是node耗尽了所有可用的套接字吗?似乎我已经找到了node.js本身使用大量CPU和内存的原因。我有一些处理数千行用户位置和计算距离的代码。这似乎是非常昂贵的,并有一个节

我对Node和javascript比较陌生。我正在运行一个程序,执行大量的网络api调用并处理结果。我所经历的是,我的节点代码使在我的mac上运行的其他程序(Outlook、Chrome等)没有响应,以至于我甚至无法强制退出这些程序,不得不硬重启我的机器


知道为什么会这样吗?我认为node.js有点沙盒化,不应该影响其他程序。是node耗尽了所有可用的套接字吗?

似乎我已经找到了node.js本身使用大量CPU和内存的原因。我有一些处理数千行用户位置和计算距离的代码。这似乎是非常昂贵的,并有一个节点上的大通行费。我已将该代码移到process.nextTick()中,它不再挂起其他程序


我仍然不明白的是node为什么会挂起,为什么它也会挂起mac上的其他程序。

似乎我已经找到了node.js本身使用大量CPU和内存的原因。我有一些处理数千行用户位置和计算距离的代码。这似乎是非常昂贵的,并有一个节点上的大通行费。我已将该代码移到process.nextTick()中,它不再挂起其他程序


我仍然不明白的是,为什么node会挂起,为什么它也会挂起我mac上的其他程序。

如果您有一个进程占用了计算机上的所有CPU/内存,那么其他进程可能会受到影响。Mac OS X不一定在RAM/CPU使用方面对进程进行沙箱处理,尽管您可以选择(通过
ulimit
shell命令)设置一些限制。谢谢您的评论。但是我的mac有i7处理器,我想它有4个内核?节点事件循环只是一个线程。我不确定node使用了多少其他线程。所以我很惊讶它使用了所有的4个核。我认为占用内存将是最大的问题。在某个时候,物理RAM耗尽,Mac开始交换,使其速度变慢。如果您的某个进程占用了计算机上的所有CPU/内存,则其他进程可能会受到影响。Mac OS X不一定在RAM/CPU使用方面对进程进行沙箱处理,尽管您可以选择(通过
ulimit
shell命令)设置一些限制。谢谢您的评论。但是我的mac有i7处理器,我想它有4个内核?节点事件循环只是一个线程。我不确定node使用了多少其他线程。所以我很惊讶它使用了所有的4个核。我认为占用内存将是最大的问题。在某个时候,物理RAM用完了,你的Mac电脑开始交换,使它变慢了。