(转载)Linux系统调用--getpid/getppid函数详解
【getpid/getppid系统调用】
功能描述:
getpid返回当前进程标识,getppid返回父进程标识。
用法:
#include <sys/types.h>
#include <unistd.h>
pid_t getpid(void);
pid_t getppid(void);
例子:
#include <stdlib.h>
#include <stdio.h>
#include <sys/types.h>
int main(void)
{
pid_t pid;
printf("Before fork ...\n");
switch(pid = fork()) {
case -1:
printf("Fock call fail\n");
exit(1);
case 0:
printf("The pid of child is: %d\n", getpid());
printf("The pid of child's parent is: %d\n", getppid());
printf("Child exiting...\n");
exit(0);
default:
printf("The pid of parent is: %d\n", getpid());
printf("the pid of parent's child is: %d\n", pid);
}
printf("After fork, program exiting...\n");
exit(0);
}
getpid()
getppid()
进程和父进程函数
getpid()
和getppid()
进程和父进程函数,在调用中都不能返回错误,下面的程序输出了他的进程ID和父进程ID,由于不能保证pid_t
能够放进 int
类型中去,返回值被转为long
整型输出
main()
{
#include <stdio.h>
#include <unistd.h>
printf ("I am process %ld",(long)getpid());
printf ("My parent is %ld",(long)getppid());
exit(0);
}
原文链接:https://blog.csdn.net/shixiaoguo90/article/details/21953959