Linux教程

Linux--fork函数

本文主要是介绍Linux--fork函数,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1. 使用fork函数创建一个进程 

 pid t fark(void); 

fork函数调用成功,返回两次,返回值为0,代表当前进程是子进程,返回值非负数,代表当前进程为父进程,调用失败,返回-1

2.fork函数创建一个子进程的一般目的
(1)一个父进程希望复制自己,使父、子进程同时执行不同的代码段。这在网络服务进程中是常见的—父进程等待客户端的服务请求。当这种请求到达时,父进程调用fork,使子进程处理此请求。父程则继续等待下一个服务请求到达。
(2)一个进程要执行一个不同的程序。这对shell是常见的情况。在这种情况下,子进程从fork返回后立即调用exec。

#include<stdio.h>
#include <sys/types.h>
#include <unistd.h>

int main()
{
        pid_t pid;
        int data = 10;

        while(1){

                printf("please input a data\n");
                scanf("%d",&data);
                if(pid == 1){

                        pid = fork();

                        if(pid > 0){


                        }else if(pid == 0){

                                while(1){

                                        printf("do net request,pid = %d\n",getpid());
                                        sleep(3);

                                }
                        }
               }else{
                        printf("wait,do nothing\n");
                }
        }

        return 0;
}

3.

 

这篇关于Linux--fork函数的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!