Crear un proceso y 3 hijos
Publicado por Charly (5 intervenciones) el 29/10/2017 17:08:16
Hola, estoy empezando a manejar los procesos en C con Linux y me han mandado crear un padre y 3 hijos.
Los he creado bien pero me sale las 3 veces con el mismo pid.
Este es el código que he escrito:
Y aquí está la salida:
Soy el hijo 3, Mi padre es= 4183, Mi PID= 4184
Soy el hijo 2, Mi padre es= 4183, Mi PID= 4184
Soy el hijo 1, Mi padre es= 4183, Mi PID= 4184
Proceso PADRE = 4183
El problema es que me debería salir el pid de cada hijo diferente.
Gracias por adelantado.
Los he creado bien pero me sale las 3 veces con el mismo pid.
Este es el código que he escrito:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdlib.h>
#include <unistd.h>
#include <stdio.h>
void main(){
pid_t pid_padre,pid_hijos;
pid_padre=fork();
if(pid_padre==0){
for(int i=3;i>=1;i--){
printf("Soy el hijo %d, Mi padre es= %d, Mi PID= %d\n",i,getppid(),getpid());
}
printf("Proceso PADRE = %d\n",getppid());
}else{
pid_hijos=wait();
}
exit(0);
}
Soy el hijo 3, Mi padre es= 4183, Mi PID= 4184
Soy el hijo 2, Mi padre es= 4183, Mi PID= 4184
Soy el hijo 1, Mi padre es= 4183, Mi PID= 4184
Proceso PADRE = 4183
El problema es que me debería salir el pid de cada hijo diferente.
Gracias por adelantado.
Valora esta pregunta


0