fork函数的作用是创建一个新进程,其原型为:
pid_t fork(void);
要使用fork函数必须包含#include
fork函数调用一次返回两次,子进程的返回0,父进程的返回子进程的pid,Linux下调用fork函数后。子进程和父进程之间的数据共享方式是写时复制。
看源代码:
多运行几次,注意子进程里面printf("father process id is %d/n", getppid());这句输出的内容,如果main函数先行结束,那么就输出为1,否则输出为main函数进程的PID。
这说明当main函数先结束后,子进程将由init进程接管。