fork()函数
作者:bin意义:
fork顾名思义,即分叉,进程分叉为2个进程,即新增一个子进程。
int fork_3(){
    printf("it's the main process step 1!!\n\n");
    fork();
    printf("step2 after fork() !!\n\n");
    int i; scanf("%d",&i);   //prevent exiting
    return 0;
}
执行如上程序将会输出2条:
step2 after fork()
即程序在fork()后出现分支。
使用场景:
因为fork()函数在 主进程 与 子进程 的 返回值 不一样,主进程返回进程号,子进程返回0;
通过如下语句进行区分处理;
if (fork()) exit(0);
这里即将主进程结束,子进程进行下去(常用语守护进程),如下
if (setsid() == -1) exit(1);