版權所有 © 2014 tutorialspoint
fork - 建立子程序
#include <sys/types.h> #include <unistd.h> pid_t fork(void);
pid_t fork(void);
fork() 建立一個子程序,該子程序僅在其 PID 和 PPID 以及資源利用率設定為 0 方面與父程序不同。檔案鎖和掛起的訊號不會被繼承。
在 Linux 下,fork() 使用寫時複製頁面實現,因此它唯一產生的開銷是複製父程序頁表所需的時間和記憶體,以及為子程序建立唯一的任務結構。
成功時,子程序的 PID 將返回到父程序的執行執行緒中,並且在子程序的執行執行緒中返回 0。失敗時,將在父程序的上下文中返回 -1,不會建立子程序,並且errno將被適當地設定。
SVr4、4.3BSD、POSIX.1-2001。
clone (2)
execve (2)
setrlimit (2)
unshare (2)
vfork (2)
wait (2)
廣告