Tag: multithreading

node.js模块:Async vs Fibers.promise vs Q_oper8

只是想知道是否有人可以给我比较这些模块之间的权衡处理asynchronous事件。 具体来说,我有兴趣知道使用Async而不是Fibers.promise的原因,目前我至less在我的testing代码中使用了它。 特别是,我在Fibers.promise中看到的一个主要优势是我可以保持堆栈链前端分叉,使得最终可以使用try { } catch { } finally ,并且还允许我确保在请求已经处理了响应结束。 有人使用Q_oper8吗? 我在另一个网页上发现了这个,只是想知道如果这已经死了,或者我应该检查一下。

nodejs中的并发模型

有没有人知道内存和线程模型是在nodejs? 特别是ii++primefaces? 它是否像在Java 1.5,Java 1.4,C中一样volatile ?还是根本就不行?

为什么node.js是asynchronous的?

没有人真正问过这个问题(从我提出的所有“build议”中,在我问到这里之前,也从中寻找)。 那么为什么node.js是asynchronous的呢? 从我在一些研究中推论出来的: 像PHP和Python这样的语言是脚本语言(我可能是错误的脚本语言的实际语言),而JavaScript不是。 (我想这是源于JS不编译的事实?) Node.js在单线程上运行,而脚本语言使用multithreading。 asynchronous意味着无状态,连接是持久的,而同步是(几乎)相反的。 也许答案是在上面的某个地方find的,但是我还不确定。 我的第二个也是最后一个与这个话题有关的问题是: JavaScript可以变成同步语言吗? PS。 我知道你们中的一些人会问“你为什么要让JS同步?” 在你的答案中,但事实是,我没有。 我只是问这些types的问题,因为我确信有更多的人在那里,而不仅仅是我自己曾经想过这样的问题。

Node.js的事件驱动有什么不同? 我们不能在ASP.Net的HttpAsyncHandler中做到这一点吗?

我在networking编程方面并不是很有经验,而且我也没有在Node.js中编写任何代码,只是对事件驱动的方法感到好奇。 这看起来不错。 文章解释了当我们使用基于线程的方法来处理请求时可能发生的一些不好的事情,而应该select事件驱动的方法。 在基于线程的情况下,收银员/线程与我们卡在一起,直到我们的食物/资源准备就绪。 在事件驱动的情况下,收银员将我们发送到请求队列的某个地方,所以我们在等待我们的食物时不会阻止其他请求。 要扩展基于线程的阻塞,您需要增加线程的数量。 对我来说,这似乎是不正确地使用线程/线程池的一个不好的借口。 不能正确处理使用IHttpAsyncHandler? ASP.Net接收一个请求,使用ThreadPool并运行处理程序(BeginProcessRequest),然后在里面我们用一个callback加载文件/数据库。 该线程应该可以自由处理其他请求。 一旦完成文件读取,ThreadPool就会被再次调用并执行剩余的响应。 对我来说不是那么不同,为什么这不是可扩展的? 我所知道的基于线程的一个缺点是,使用线程需要更多的内存。 但只有这些,你才能享受到多核的好处。 我怀疑Node.js根本没有使用任何线程/内核。 所以,基于事件驱动和基于线程的(不要带“因为它是Javascript和每个浏览器…”的说法),有人可以指出使用Node.js的实际好处,而不是现有的技术? 这是一个长期的问题。 谢谢 :)