【发布时间】:2010-02-23 21:51:18
【问题描述】:
Groovy Process Management 页面提到:
因为一些原生平台只为标准输入提供有限的缓冲区大小 和输出流,未能及时写入输入流或读取输出 子进程的流可能导致子进程阻塞,甚至死锁
这个 sn-p 来自 JDK API。具体是哪些平台?
【问题讨论】:
Groovy Process Management 页面提到:
因为一些原生平台只为标准输入提供有限的缓冲区大小 和输出流,未能及时写入输入流或读取输出 子进程的流可能导致子进程阻塞,甚至死锁
这个 sn-p 来自 JDK API。具体是哪些平台?
【问题讨论】:
这也发生在 Linux 和(我希望)Solaris 上。
事实上,我会惊讶地发现任何为进程到进程流提供无限缓冲的传统操作系统平台;即 UNIX 术语中的管道。
【讨论】:
我知道这至少发生在 Windows 上。这就是为什么必须在另一个线程中读取孩子的标准输入和标准输出的原因。
【讨论】: