我读过你可以将文件描述符传递给那里的另一个进程,这似乎非常适合我想要的。在哈斯克尔以任何方式可行的任何机会吗?需要明确的是,我不是在分叉,我无法预先打开文件,我实际上需要一种方法将文件描述符(主要是 stdin(从一堆进程传递到守护进程,以避免必须保持进程只是为了转发它们的输入,这会很快填充进程列表,并且可能会无缘无故地吃资源。
谢谢!
您可以从 unix 包中获取 STDIN 的文件描述符,从网络中获取 UNIX 域套接字。
我从未尝试过在进程之间传递文件描述符,但它在 Haskell 中应该与任何其他语言一样工作。