【发布时间】:2014-02-06 22:56:04
【问题描述】:
在 Node.js 中,我使用 child_process 模块的 exec 命令调用 Java 中的算法,该算法将大量文本返回到标准输出,然后我对其进行解析和使用。大部分我都能捕捉到,但是当它超过一定的行数时,内容就会被截断。
exec("sh target/bin/solver "+fields.dimx+" "+fields.dimy, function(error, stdout, stderr){
//do stuff with stdout
}
我尝试过使用 setTimeouts 和回调,但没有成功,但我确实觉得这种情况正在发生,因为我在代码中引用了标准输出,然后才能完全检索它。我已经测试过 stdout 实际上是第一次发生数据丢失的地方。这不是进一步的异步问题。我也在我的本地机器和 Heroku 上对此进行了测试,并且发生了完全相同的问题,每次都在完全相同的行号处截断。
您有什么想法或建议可以对此有所帮助吗?
【问题讨论】:
标签: javascript node.js exec stdout child-process