1. <tt id="5hhch"><source id="5hhch"></source></tt>
    1. <xmp id="5hhch"></xmp>

  2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

    <rp id="5hhch"></rp>
        <dfn id="5hhch"></dfn>

      1. Linux下子進程與父進程的關系

        時間:2020-08-12 17:55:22 Linux認證 我要投稿

        Linux下子進程與父進程的關系

          我們知道,Linux下父進程可以使用fork 函數創建子進程,但是當父進程先退出后,子進程會不會也退出呢?到底Linux下父進程和子進程的關系如何呢?下文為大家分享最新代碼如下:

          通過下面這個小實驗,我們能夠很好的看出來:

          復制代碼

          /******** basic.c ********/

          1 #include "basic.h"

          2

          3 pid_t Fork(void)

          4 {

          5 pid_t pid = fork();

          6 if (pid < 0) {

          7 fprintf(stderr, "Fork error: %s\n", strerror(errno));

          8 exit(0);

          9 }

          10

          11 return pid;

          12 }

          復制代碼

          1 ********** basic.h ***********

          2

          3 #ifndef __CSAPP_BASIC_H

          4 #define __CSAPP_BASIC_H

          5

          6 #include

          7 #include

          8 #include

          9 #include

          10 #include

          11 #include

          12 /* function definition concerned with basic.c */

          13 pid_t Fork();

          14

          15 #endif

          復制代碼

          1 ******* fork.c *********

          2

          3 #include "basic.h"

          4

          5 int main()

          6 {

          7 int pid = Fork();

          8 int x = 2;

          9

          10 if (pid == 0) {

          11 printf("child: pid = %d, ppid = %d, x = %d\n", getpid(), getppid(), ++x);

          12 sleep(3);

          13

          14 printf("child: pid = %d, ppid = %d, x = %d\n", getpid(), getppid(), ++x);

          15 exit(0);

          16 }

          17

          18 printf("parent: pid = %d, ppid = %d, x = %d\n", getpid(), getppid(), --x);

          19

          20 }

          通過 gcc fork.c basic.c -o fork 編譯即可的 fork 程序。 運行 ./fork

          可以看出父進程首先退出,退出前child的'PPID為12256, 退出后子進程的PPID變為了 1.說明父進程退出后的子進程由 init 超級進程1領養。而該進程是不絕不會退出的。

        【Linux下子進程與父進程的關系】相關文章:

        Linux進程關系最新解讀201605-25

        Linux系統守護進程的啟動方法05-17

        關于linux查看進程ps top區別09-30

        多進程OSPF及進程號的意義11-12

        Linux讓進程在后臺可靠運行的幾種方法08-27

        常見系統進程大全10-11

        圍棋棋局的進程劃分10-08

        如何避免出現僵尸進程10-05

        php多進程編程詳解201711-12

        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码

        1. <tt id="5hhch"><source id="5hhch"></source></tt>
          1. <xmp id="5hhch"></xmp>

        2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

          <rp id="5hhch"></rp>
              <dfn id="5hhch"></dfn>