【发布时间】:2016-11-10 10:11:30
【问题描述】:
我想了解如何创建一个由于我的 java 应用程序通过标准输出延迟而总是等待新行的函数?
我想将其显示在我的终端控制台上,让数据逐渐呈现,而不是作为一个整体呈现。
这是我的 java 代码:
public class HelloWorld {
public static void main(String[] args) {
// Prints "Hello, World" to the terminal window.
// System.out.println("Hello, Worldzzz");
for (int i=1; i<11; i++) {
try {
Thread.sleep(500);
}
catch (Exception e) {
}
System.out.println("Count is: " + i);
}
}
}
到目前为止,这是我的节点 js 代码:
var http = require('http'),
util = require('util'),
url = require('url'),
exec = require('child_process').exec,
child,
result = '',
poort = 8088;
http.createServer(function(req, res) {
res.writeHead(200, {
'Content-Type': 'text/plain'
});
var pathname = url.parse(req.url).pathname;
if (pathname == '/test') {
res.write('test:');
child = exec('java HelloWorld', function(error, stdout, stderr) {
console.log = function(d) {
process.stdout.write(d + stdout + '\n');
};
//console.log('stdout: ' + stdout);
console.log('stderr: ' + stderr);
if (error !== null) {
console.log('exec error: ' + error);
}
})
res.end();
} else {
res.write('operation not allowed');
res.end();
}
}).listen(poort);
【问题讨论】:
-
.exec在调用回调之前不是已经等待程序终止了吗?
标签: javascript java node.js