我是靠谱客的博主 外向乌冬面,最近开发中收集的这篇文章主要介绍folk函数功能介绍以及使用方法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

功能:创建一个子进程。
形式:pid_t fork(void); 例:pid_t pid=fork();

​ 失败:pid返回: -1;

​ 成功: pid返回:

​ ① 父进程返回子进程的 ID(非负)

​ ②子进程返回 0

pid_t 类型表示进程 ID,但为了表示-1,它是有符号整型。(0 不是有效进程ID, init 最小,为 1)

注意返回值,不是 fork 函数能返回两个值,而是 fork 后,fork 函数变为两个,父子需【各自】返回一个。

例:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <pthread.h>

int main(int argc, char *argv[])
{
    printf("before fork-1-n");     // 在fork之前打印,父进程执行,只执行一次
    printf("before fork-2-n");
    printf("before fork-3-n");
    printf("before fork-4-n");

    pid_t pid = fork();             // 创建子进程
    if (pid == -1) {
        perror("fork error");
        exit(1);

    } else if (pid == 0) {          // 子进程
        
        printf("---child is createdn");

    } else if (pid > 0) {           // 父进程

        printf("---parent process: my child is %dn", pid);
    }
    
    printf("===================end of filen");  // 父子进程各自执行一次.

    return 0;
}

程序打印结果:

在这里插入图片描述

可得:

​ 子进程出现(folk()函数)之前的程序,只由父进程执行,子进程之后的函数,子进程与父进程各自执行一遍。

最后

以上就是外向乌冬面为你收集整理的folk函数功能介绍以及使用方法的全部内容,希望文章能够帮你解决folk函数功能介绍以及使用方法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(50)

评论列表共有 0 条评论

立即
投稿
返回
顶部