Tag: pid

如何在Node.JS中编写一个asynchronouswhile循环

我正在编写一个node.js应用程序来帮助自动化我的一些家酿酒厂。 我正在使用的一个模块是一个PIDalgorithm来控制输出,使它们保持一定的设定值。 我目前正在通过一个while循环,但是我认为这个代码将被阻止。 任何帮助使这个更有效和asynchronous将不胜感激。 这是我的控制循环: device.prototype.pid_on = function(){ while(this.isOn){ this.pid.set_target(this.target); // make sure that the setpoint is current var output_power = this.pid.update(this.current_value); // gets the new output from the PID this.output.set_power(output_power); }; }; 为了便于阅读,我稍微改了一下,但基本上就是这样。 它只会循环,调整输出,然后反馈新的input值。 我希望循环继续运行,直到设备closures。 显然,我需要这个非阻塞,这样我可以继续控制其他设备,而PID正在运行。 目前,我只是调用相当于device.pid_on(); 在我的代码。 我有一个想法是使用一个空的callback,这将使这个非阻塞? device.prototype.pid_on(calback){ while (this.isOn){…}; callback(); }; //call later in code device.pid_on(function(){}); 感谢任何/所有的帮助!

为什么一个node.js进程在OSX上突然死亡而在任何日志文件中都没有解释?

90%的时间我总是得到一个堆栈跟踪。 但是有时候这个过程只是退出,我不知道为什么。 总之打印堆栈跟踪总是? 或者在dmesg中find更多的信息?

如何找出哪个Node.js pid在哪个端口上运行

我想重新启动我的服务器上运行的许多Node.js进程之一。 如果我运行ps ax | grep node ps ax | grep node我得到所有我的节点处理程序的列表,但它不告诉我他们在哪个端口上。 如何杀死端口3000上运行的(例如)。 什么是pipe理多个Node进程的好方法?

节点configuration文件中的___mac_get_pid符号是什么?

我正在分析一些在OSX上运行的多进程nodejs代码。 我正在看: [C++]: ticks total nonlib name 23398 63.6% 63.8% ___mac_get_pid 什么是___mac_get_pid ? 这个名字无疑暗示了这是一些“在Mac上获得PID”的代码,但时间似乎过度了。 谷歌search没有提供任何有用的。

如何检查一个任意PID是否正在使用Node.js运行?

有什么办法来检查是否一个任意的PID在系统上运行或活着,使用Node.js? 假设Node.js脚本具有读取/proc或Windows等效的适当权限。 这可以同步完成: if (isAlive(pid)) { //do stuff } 或asynchronous: getProcessStatus(pid, function(status) { if (status === "alive") { //do stuff } } 请注意,我希望find一个适用于任意系统PID的解决scheme, 而不仅仅是正在运行的Node.js进程的PID。