linux fork clone

fork調用的一個奇妙之處就是它僅僅被調用一次,卻能夠返回兩次,它可能有三種不同的返回值:
    1)在父進程中,fork返回新創建子進程的進程ID;
    2)在子進程中,fork返回0;
    3)如果出現錯誤,fork返回一個負值;

 

fork()調用除了會複製父進程的所有已打開文件描述符, 還會複製父進程的緩存到子進程中.

 

終端stdout是行緩存的

普通文件的緩存是基於長度的, 也就是說輸出到普通文件的數據, 在緩存後, 只有達到了緩存上限, 或者手動調用 flush/sync 等系統調用刷新, 纔會清空緩存並刷新到文件中

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章