Changes between Version 4 and Version 5 of wade/linuxProgramming


Ignore:
Timestamp:
Jan 10, 2009, 5:37:26 PM (16 years ago)
Author:
wade
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • wade/linuxProgramming

    v4 v5  
    3737
    3838== Pipe ==
    39  * FD[0] 負責 read pipe。FD[1] 負責 write pipe。
     39 * FD[0] 負責 read pipe。FD[1] 負責 write pipe。
     40   FD[1] → [PIPE] → FD[0]。
    4041 * read() 會被 block 住,所以不用擔心 parent 會比 child 先結束,而導致 child 也跟著結束 (因為 child process 是依附著 parent process 而存在,依存關係可透過 pstree 查詢)。
    41  * FD 也是分開,child 跟 parent 有各自的 FD[0]、FD[1]
     42 * 先使用 pipe(FD[2]),再使用 fork() 時,FD[2] 也會同時複製兩份,child 跟 parent 有各自的 FD[0]、FD[1],所以要記得關掉不必要的 FD ,兩個 processes 各自與 pipe 相接
    4243 
    4344== Reference ==