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

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


  Mostrar Mensajes
Páginas: [1]
1  Programación / Programación C/C++ / Ayuda con fork() y señales SIGUSR1 en: 3 Mayo 2017, 04:10 am
Hola me gustaria que me hechen una mano necesito crear un programa que a traves de una señal SIGUSR1 que se manda desde otra consola, en la consola original mostrar la hora, el problema que tengo es que me exijen que muestre el pid cambie pero me muestra siempre el mismo. Adjunto el codigo limpio para ver si me pueden ayudar con el tema de poner el fork() ya que cuando intento ponerlo se me pega en el mismo proceso y la idea es que el programa este siempre en espera de la señal SIGUSR1(por eso el while(1)).


Código
  1. #include<stdio.h>
  2. #include<signal.h>
  3. #include<unistd.h>
  4. #include<time.h>
  5.  
  6.  
  7.  
  8.  
  9. void sig_handler(int signo)
  10. {
  11. time_t rawtime;
  12. time (&rawtime);
  13.        printf("Hora actual es: %s", ctime (&rawtime));
  14. printf("Listo para recibir la señal SIGUSR1.\n");
  15.  
  16. }
  17.  
  18. void main()
  19. {
  20.  
  21. pid_t pid;
  22. pid=getpid();
  23. printf("Programa hora ejecutandose. PID=%d.\n", pid);
  24. printf("Listo para recibir la señal SIGUSR1.\n");
  25. signal(SIGUSR1, sig_handler);
  26. while(1);
  27.  
  28. }
  29.  
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines