0
我正在测试node.js和作为子进程启动的可执行文件之间的通信。可执行文件将从node.js中通过child_process.spawn()
启动,其输出将由node.js监视。我正在Linux和Windows操作系统上测试这个功能。无法生成与node.js正确通信的可执行文件
我已经成功地产生了tail -f /var/log/syslog
并且侦听了它的输出,但是我自己的可执行文件似乎无法正确写入标准输出(无论以何种形式存在,都被node.js捕获)。
测试代码:
#include <iostream>
#include <stdio.h>
#include <unistd.h>
int main()
{
using namespace std;
long x = 1;
while (true)
{
fprintf(stdout, "xtime - %ld\n", x++);
usleep(1000000);
}
}
(注:有些include
S可以是无用的,我没有检查过)
你尝试在你的'fprintf()'之后添加'fflush(stdout)'吗? – mscdex 2014-09-10 14:00:38
@mscdex完成了!我有一种唠叨的感觉,就是那种感觉,但是确实这是一件更复杂的事情。如果你发布了正确的答案,我会很乐意接受它。谢谢。 – Doc 2014-09-10 15:33:05