child 进程之间的管道
Pipe between child processes
是否可以在 2 个或更多 child 个进程之间创建管道?
如果是这样,它必须由父亲创建还是可以由 child 之一创建?
是的,可以在子进程之间创建管道。
管道标识符需要被两端知道才能连接到它——但是当它们还没有连接时,它们应该如何交换这个标识符?这就是为什么通常管道是由一个共同的祖先创建的,该祖先在创建时将这个共同的标识符传递给它的所有子元素。
您似乎要寻找的是 named pipes - 这些可以通过一个众所周知的(按照惯例)名称打开,而无需先接收信息。但是,命名管道与进程的生命周期无关——您需要有一些外部实例在不再需要它们时创建和销毁它们。否则,他们将继续使用系统资源,直到系统重新启动。
是否可以在 2 个或更多 child 个进程之间创建管道?
如果是这样,它必须由父亲创建还是可以由 child 之一创建?
是的,可以在子进程之间创建管道。
管道标识符需要被两端知道才能连接到它——但是当它们还没有连接时,它们应该如何交换这个标识符?这就是为什么通常管道是由一个共同的祖先创建的,该祖先在创建时将这个共同的标识符传递给它的所有子元素。
您似乎要寻找的是 named pipes - 这些可以通过一个众所周知的(按照惯例)名称打开,而无需先接收信息。但是,命名管道与进程的生命周期无关——您需要有一些外部实例在不再需要它们时创建和销毁它们。否则,他们将继续使用系统资源,直到系统重新启动。