Wie erhalte ich die Prozess-ID in C-Sprache? (Codebeispiel)

青灯夜游
Freigeben: 2019-03-06 13:56:32
Original
7827 Leute haben es durchsucht

Wir können die Funktionen getppid() und getpid() verwenden, um die Prozess-ID zu erhalten. Beide sind integrierte Funktionen, die in der unistd.h-Bibliothek definiert sind und die Prozess-ID zurückgeben können. Im folgenden Artikel erhalten Sie eine kurze Einführung in die Funktionen getppid() und getpid() und erfahren, wie Sie die Prozess-ID mithilfe der C-Sprache im Linux-System erhalten. Ich hoffe, dass er für Sie hilfreich ist.

Wie erhalte ich die Prozess-ID in C-Sprache? (Codebeispiel)

getpid()-Funktion

Wenn ein Prozess erstellt wird, hat er eine eindeutige ID namens ist die Prozess-ID. Die Funktion getpid() gibt die Prozess-ID des aufrufenden Prozesses zurück. [Video-Tutorial-Empfehlung: C-Sprach-Tutorial]

Grundsätzliche Syntax:

pid_t getpid(void);
Nach dem Login kopieren

Rückgabetyp: Die Funktion getpid() gibt die Prozess-ID des aktuellen Prozesses zurück Bei Würfen treten keine Fehler auf und sie sind daher immer erfolgreich.

getppid()-Funktion

getppid()-Funktion: Gibt die Prozess-ID des übergeordneten Prozesses des aufrufenden Prozesses zurück.

Hinweis: Wenn der aufrufende Prozess durch die Funktion fork() erstellt wurde und der übergeordnete Prozess beim Aufruf der Funktion getppid() noch vorhanden ist, gibt diese Funktion die Prozess-ID des übergeordneten Prozesses zurück. Andernfalls gibt diese Funktion den Wert 1 zurück, der die Prozess-ID des Init-Prozesses ist.

Grundlegende Syntax:

pid_t getppid(void);
Nach dem Login kopieren

Rückgabetyp: Die Funktion getppid() gibt die Prozess-ID des übergeordneten Prozesses des aktuellen Prozesses zurück; sie löst nie einen Fehler aus und ist daher immer erfolgreich.

Hinweis: pid_t ist der Typ der Prozess-ID, bei dem es sich um einen Datentyp vom Typ einer vorzeichenlosen Ganzzahl handelt.

Codebeispiel (C-Sprache):

Sehen wir uns an, wie man die aufrufende Prozess-ID und die übergeordnete Prozess-ID mithilfe der C-Sprache erhält in einem Linux-System.

#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;
}
Nach dem Login kopieren

Ausgabe:

调用函数的进程ID:31120
父函数的进程ID:31119
Nach dem Login kopieren

Beschreibung: Header-Datei

● stdio.h: wird für die Funktion printf() verwendet

● sys/types.h: Für den Typ pid_t der Datentyp der Variablen, die zum Speichern der Prozess-ID verwendet wird.

●unistd.h: wird für die Funktionen getpid() und getppid() verwendet

Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Lernen aller hilfreich sein wird. Weitere spannende Inhalte finden Sie in den entsprechenden Tutorial-Kolumnen auf der chinesischen PHP-Website! ! !

Das obige ist der detaillierte Inhalt vonWie erhalte ich die Prozess-ID in C-Sprache? (Codebeispiel). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!