Tanto getppid() como getpid() son funciones integradas definidas en la biblioteca unistd.h .
- getppid() : devuelve el ID de proceso del padre del proceso de llamada. Si el proceso de llamada fue creado por la función fork() y el proceso principal aún existe en el momento de la llamada a la función getppid, esta función devuelve el ID del proceso principal. De lo contrario, esta función devuelve un valor de 1, que es la identificación del proceso para el proceso de inicio .
Sintaxis:pid_t getppid(void);
Tipo de retorno: getppid() devuelve el ID del proceso principal del proceso actual. Nunca arroja ningún error, por lo tanto, siempre tiene éxito.
// C++ Code to demonstrate getppid()
#include <iostream>
#include <unistd.h>
using
namespace
std;
// Driver Code
int
main()
{
int
pid;
pid = fork();
if
(pid == 0)
{
cout <<
"\nParent Process id : "
<< getpid() << endl;
cout <<
"\nChild Process with parent id : "
<< getppid() << endl;
}
return
0;
}
Salida (Será diferente en diferentes sistemas):
Parent Process id of current process : 3849 Child Process with parent id : 3851
NOTA: En algún momento, no es necesario que el proceso secundario se ejecute primero o que el proceso principal reciba primero la CPU asignada, cualquier proceso puede obtener la CPU asignada, en algún momento cuántico. Además, la identificación del proceso puede diferir durante diferentes ejecuciones.
- getpid() : devuelve el ID de proceso del proceso de llamada. Esto suele ser usado por rutinas que generan nombres de archivos temporales únicos.
Sintaxis:pid_t getpid(void);
Tipo de retorno: getpid() devuelve el ID del proceso actual. Nunca arroja ningún error, por lo tanto, siempre tiene éxito.
// C++ Code to demonstrate getpid()
#include <iostream>
#include <unistd.h>
using
namespace
std;
// Driver Code
int
main()
{
int
pid = fork();
if
(pid == 0)
cout <<
"\nCurrent process id of Process : "
<< getpid() << endl;
return
0;
}
Salida (Será diferente en diferentes sistemas):
Current process id of Process : 4195
Este artículo es una contribución de Pushpanjali Chauhan . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA