Tag: multithreading

nodejs是否具有multithreading的function?

我正在尝试本教程中的非阻塞代码示例: var fs = require("fs"); fs.readFile('input.txt', function (err, data) { if (err) return console.error(err); console.log(data.toString()); }); console.log("Program Ended"); 假设我有单处理器CPU。 谁pipe理callback function和console.log()方法之间的CPU时间? Nodejs的内核是否有像Thread manager这样的东西? 它是如何工作的?

JavaScript中的数据竞争?

让我们假设我运行这段代码。 var score = 0; for (var i = 0; i < arbitrary_length; i++) { async_task(i, function() { score++; }); // increment callback function } 从理论上讲,我知道这表示一个数据竞赛,并且两个线程同时尝试增加可能会导致单个增量,但是,nodejs(和javascript)被称为单线程。 我保证得分的最终值将等于任意长度?

Node.js集群 – 最佳的工作人员数量

我有4个内核,按照这个例子运行这个代码: var cluster = require('cluster'); var http = require('http'); var numCPUs = require('os').cpus().length; var id = 0; if (cluster.isWorker) { id = cluster.worker.id; } var iterations = 1000000000; console.time('Function #' + id); for (var i = 0; i < iterations; i++) { var test = 0; } console.timeEnd('Function #' + id); if (cluster.isMaster) { // […]

在单独的线程NodeJs中运行长时间运行的快速API进程

我有一个API调用需要大约5-10分钟的时间来处理。 我设置了一个超时方法,这样我就可以立即获得一个排队状态的API响应。 下面简单的视觉 doWork(object) => { /*… Takes 5 minutes */ } app.post('/longProcess',(req,res)=> { setTimeout(this.doWork(req.body), 1000); res.send({ status: 'queued' }); }) 这对第一个请求立即作出回应的作品。 但第二个请求被locking,等待doWork完成。 而不是使用SetTimeout,我真正想要做的就是将longProcess发送到一个单独的单线程队列和逐一处理这些。 有什么build议么?

迭代每个元素的数组运行asynchronous任务

我有一个项目的列表,我想在每个项目上运行一个asynchronous任务。 我想同步,所以每个元素将被处理,一旦前面的元素已经完成。 我到目前为止所尝试的是: function processItems(items) { var i = 0; while(i < items.length) { asyncFunc(items[i], function() { i++ }); // asyncFunc takes a callback parameter } } 然而这个循环永远(我相信i在callback函数中超出了范围)。 有没有更好的方法来实现这一目标?

Opastream量控制,螺纹?

Node.js本身支持工作线程和subprocess的创build。 那些和Node.js一起工作的人可能熟悉stream控制库,如Async.js或Step。 现在,因为Opa在Node.js堆栈上运行,有没有办法使用Async.js库作为JavaScript模块? 有没有Opa语言的绑定允许线程或某种asynchronousstream量控制? 我怀疑没有,但我很好奇在Opa中实现线程或asynchronousstream量控制的可能select是什么? *现在我知道我可以用非Opa语言将我的作品提交给另一个剧本,但这是我唯一的select吗? 在此先感谢,因为我是Opa的新手,并且正在努力了解它的function!

Lua是一种基于事件的编程语言吗?

是基于Lua事件还是线程? 最近我对Node.js有很多的了解,看来最大的卖点之一就是基于事件的,而不是基于线程的。 什么是Lua?

为什么我的服务器上列出了多个PM2进程?

我有一个使用PM2在生产服务器上运行的节点应用程序。 当我ssh进入服务器并运行htop我可以看到列出了多个PM2 God Daemon进程。 我不明白为什么会有多个进程,因为只有一个Sails应用程序通过PM2运行。 我的印象是Node应用程序只使用一个线程,所以我不知道为什么会列出多个PM2进程。 有人可以帮助解决这个问题吗?

Node.js IPC tutoruals

node.js有多个cluster / IPC库,如多节点或节点集群。 我想弄清楚它们是如何工作的,但是在node.js中缺less有关IPC的很好的教程/文档/手册。 没有他们,阅读所有这些几乎没有评论和logging的像我这样的node.js中的新人的源代码是很难的。 如果有人存在,有人可以提供一些指南或文档的链接吗? 预先感谢您的答案。

Android的/套接字 – 如何从主UI线程发送信息到套接字线程?

我一直在通过论坛阅读过去一天,我似乎无法find一个答案,这将有助于解决我的问题。 我想创build一个Android套接字/游戏客户端,其中: 连接到服务器上的一个新的套接字在一个单独的线程从UI(我想保持打开) 在套接字上侦听来自服务器的消息,并使用处理程序将其发送到UI线程。 从主UI线程获取信息(即用户input,获取文本视图,button点击),然后将信息发送到服务器。 继续收听/发送其余的活动。 我在实施#3方面遇到很多困难。 最初连接到服务器的套接字是在它自己的线程中,我想保持打开无限期。 从主UI线程获取信息的最佳方式是什么,以便我可以使用该线程和套接字将信息发送到服务器? 我看到很多关于从后台线程返回信息到UI线程的post,但没有反过来。 有没有这样做的标准方式? 谢谢!