1
。Ç - 鑑於叉數處理,我怎樣才能(葉)過程中使用的命名管道從底部水平到頂級過程發送一個消息的程序的頂部和底部電平之間通信的進程
我知道該怎麼寫,並從命名管道讀,但我不知道該如何寫命名管道作爲底層進程並等待只從頂層進程讀取它。
。Ç - 鑑於叉數處理,我怎樣才能(葉)過程中使用的命名管道從底部水平到頂級過程發送一個消息的程序的頂部和底部電平之間通信的進程
我知道該怎麼寫,並從命名管道讀,但我不知道該如何寫命名管道作爲底層進程並等待只從頂層進程讀取它。
創建在頂部過程的管道對和具有底部過程繼承它(自動)。底層進程可以寫入寫入結束,頂層進程可以從讀取結束讀取。
您創建一個管道對pipe
系統調用記錄在 http://linux.die.net/man/2/pipe。 該文檔提供了一個示例,其中孩子讀取和父母寫入。在你的情況下,你會切換它。
繼承的fds是對vnode的計數引用,所以這就是爲什麼您需要關閉除了要寫入的底層進程以外的所有進程中的所有寫入結束的原因,以便最終關閉寫入結束寫入器進程可以在讀取器中生成文件結束。