vfork1.c

来自「UNIX编程高级环境(第二版)的进程部分的程序源码」· C语言 代码 · 共 28 行

C
28
字号
#include    <sys/types.h>
#include    "ourhdr.h"

int        glob = 6;        /* external variable in initialized data */

int
main(void)
{
    int        var;        /* automatic variable on the stack */
    pid_t    pid;

    var = 88;
    printf("before vfork\n");    /* we don't flush stdio */

    if ( (pid = vfork()) < 0)
        err_sys("vfork error");
    else if (pid == 0) {        /* child */
        glob++;                    /* modify parent's variables */
        var++;
        _exit(0);                /* child terminates */
    }

    /* parent */
    printf("pid = %d, glob = %d, var = %d\n", getpid(), glob, var);
    exit(0);
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?