>  기사  >  백엔드 개발  >  C 언어로 프로세스 ID를 얻는 방법은 무엇입니까? (코드 예)

C 언어로 프로세스 ID를 얻는 방법은 무엇입니까? (코드 예)

青灯夜游
青灯夜游원래의
2019-03-06 13:56:327573검색

getppid() 및 getpid() 함수를 사용하여 프로세스 ID를 얻을 수 있습니다. 둘 다 unistd.h 라이브러리에 정의된 내장 함수이며 프로세스 ID를 반환할 수 있습니다. 다음 기사에서는 getppid() 및 getpid() 함수에 대해 간략하게 소개하고 Linux 시스템에서 C 언어를 사용하여 프로세스 ID를 얻는 방법을 알아보는 것이 도움이 되기를 바랍니다.

C 언어로 프로세스 ID를 얻는 방법은 무엇입니까? (코드 예)

getpid() 함수

프로세스가 생성되면 프로세스 ID라는 고유 ID가 있습니다. getpid() 함수는 호출 프로세스의 프로세스 ID를 반환합니다. [동영상 튜토리얼 추천: C 언어 튜토리얼]

기본 구문:

pid_t getpid(void);

반환 유형: getpid() 함수는 오류가 발생하지 않으므로 항상 성공하는 현재 프로세스의 프로세스 ID를 반환합니다.

getppid() 함수

getppid() 함수: 호출 프로세스의 상위 프로세스의 프로세스 ID를 반환합니다.

설명: 호출 프로세스가 fork() 함수에 의해 생성되었고 getppid() 함수가 호출될 때 상위 프로세스가 여전히 존재하는 경우 이 함수는 상위 프로세스의 프로세스 ID를 반환합니다. 그렇지 않으면 이 함수는 init 프로세스의 프로세스 ID인 값 1을 반환합니다.

기본 구문:

pid_t getppid(void);

반환 유형: getppid() 함수는 현재 프로세스의 상위 프로세스의 프로세스 ID를 반환합니다. 오류가 발생하지 않으므로 항상 성공합니다.

참고: pid_t는 프로세스 ID 유형으로 부호 없는 정수 유형의 데이터 유형입니다.

코드 샘플(C 언어):

Linux 시스템에서 C 언어를 사용하여 호출 프로세스 ID와 상위 프로세스 ID를 가져오는 방법을 살펴보겠습니다.

#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
int main(void)
{
//存储调用函数进程ID的变量
pid_t process_id;
//存储父函数进程ID的变量
pid_t p_process_id;
//getpid() - 将返回调用函数的进程ID
process_id = getpid();
//getppid() - 将返回父函数的进程ID
p_process_id = getppid();
//输出进程ID
printf("调用函数的进程ID:%d\n",process_id);
printf("父函数的进程ID:%d\n",p_process_id);
return 0;
}

Output:

调用函数的进程ID:31120
父函数的进程ID:31119

Description: 헤더 파일

● stdio.h: printf() 함수에 사용

● sys/types.h: pid_t 유형에 사용, 즉 데이터를 저장하는 데 사용되는 변수 프로세스 ID 데이터 유형.

●unistd.h: getpid() 및 getppid() 함수에 사용됩니다

위 내용은 이 글의 전체 내용이므로 모든 분들의 학습에 도움이 되기를 바랍니다. 더 흥미로운 내용을 보려면 PHP 중국어 웹사이트의 관련 튜토리얼 열을 주의 깊게 살펴보세요! ! !

위 내용은 C 언어로 프로세스 ID를 얻는 방법은 무엇입니까? (코드 예)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.