当前位置:首页 > 操作系统 > Linux

linux c++(进程相关的函数 & 第一篇 fork)

进程相关的函数

        创建一个新的线程 
pid_t fork(void);
	* 失败 -1
	* 成功,两次返回
		父进程返回,子进程的id
		子进程返回0
pid_t getpid(void); //获得当前进程的
pid_t getppid(void); //获得当前进程父进程的id

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

int main()
{
    printf("Begin ....n");
    pid_t pid = fork();
    if(pid < 0)
    {   
        perror("fork err");
        return -1; 
    }else if(pid == 0)
    {   
        //子进程
        printf("I am child,pid = %d,ppid=%dn",getpid(),getppid());
        while(1)
        {   
            printf("I am childn");
            sleep(1);
        }   
    }else if(pid > 0)
    {   
        //父进程的逻辑
        printf("childpid = %d,self = %d,ppid=%dn",pid,getpid(),getppid());
        //父进程会比子进程死的早
        while(1)
        {}   
    }   
    printf("End ....n");
    return 0;
}

    

原文:https://www.cnblogs.com/lodger47/p/14729154.html


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!

相关教程推荐

其他课程推荐