2011-06-15 52 views
0

在Groovy脚本中,eachLine是否足以阻止进程因完整缓冲而被阻塞?eachLine()是否足以阻止进程阻塞?

+0

你能更详细地解释你的问题吗?我不清楚你在问什么。 – 2011-06-15 23:09:44

+0

请参阅Process.consumeProcessOutput()Groovy JDK文档 – dromodel 2011-06-16 13:23:48

回答

2

当然这取决于两个过程的不同复杂性。

我想一个是产生输出,而另一个消耗它与eachLine。然后,如果第二个CPU有足够的CPU时间来防止填充缓冲区,则不会有任何阻塞。否则,它会缓慢/快速地填充,直到没有空间了。

你的情况没有一般的答案,因为它取决于eachLine所做的处理以及另一个产生数据的进程所做的处理。

+0

好了,以便间接回答我的问题。只要该行小于缓冲区大小,该进程就不会阻塞。 – dromodel 2011-06-17 13:59:36