Wpis z mikrobloga

Czołem mireczki, mam problem z kodem. Piszę sobie programik w C do obsługi sygnałów. W skrócie chodzi o to, że parent tworzy sobie trójkę dzieci, które coś tam robią. Kiedy parent dostanie SIGHUP wysyła SIGHUP do wszystkich swoich dzieci, kiedy dziecko dostanie SIGHUP zaczyna od nowa robić to co robiło (u mnie szukanie liczb pierwszych). Z niewiadomego mi powodu handler sygnału dzieci działa, w handlerze sygnału rodzica działa tylko pierwszy printf. Szukam i szukam, ale nie mogę znaleźć co jest problemem :/ Jeśli ktoś miałby sekundkę to bylbym wdzięczny za rzucenie okiem na kod ;)
https://pastebin.com/s7Ye7CW2

#naukaprogramowania #jezykc #pytanie
  • 4
@Piesa:
bo masz zamienione argumenty w wywolaniu kill.

SAINFO to tylko jesli chcesz korzystac z sigaction, ale bdzie dzialac tak czy siak

jesli chcesz koniecznie uzywac printf to zrob cos takiego

`
void on_hup_child(int signal){
signal(sig, SIG_IGN);
printf("Dostalem HUPa, jestem dzieckiem z PID %d\n", getpid());
signal(sig, on_hup_child);
count = 1;
}
`