elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Matar dos procesos hijos en C
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Matar dos procesos hijos en C  (Leído 2,126 veces)
Katerina Dobreva

Desconectado Desconectado

Mensajes: 7


Ver Perfil
Matar dos procesos hijos en C
« en: 2 Diciembre 2016, 20:16 pm »

Hola, tengo que hacer un programa en el que creo dos procesos hijos. Cuando pasen 5 segundos, hay que matar a los dos procesos hijos en orden, el segundo debe esperar a que muera el primero. No consigo que mueran los procesos. Alguien podría echarme una mano. Gracias.


Código:
void tiempo(int sig)
{
   kill(hijo1, SIGTERM);
   kill(hijo2, SIGTERM);
}

void funcion()
{
   printf("Se ha matado un proceso");
}

int main(int argc, char **argv)
{
   struct sigaction action;
   sigset_t new_mask;

   act.sa_flags = 0;
   act.sa_handler = &funcion;
   sigaction(SIGTERM, &action, NULL);
   sigemptyset(new_mask);
   sigaddset(&new_mask, SIGTERM);

   hijo1 = fork();
   switch(hijo1)
   {
      case 0:
         sigsuspend(&new_mask);
   }
   hijo2 = fork();
   switch(hijo2)
   {
      case 0:
         sigsuspend(&new_mask);
   }
   signal(SIGALRM, tiempo);
   alarm(5);
}


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
¿Cómo crear procesos hijos en C para Windows?
Programación C/C++
Yoel Alejandro 3 5,779 Último mensaje 23 Marzo 2014, 01:30 am
por amchacon
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines