struct sigaction action;
action.sa_sigaction = ChildHandler;
sigfillset (&action.sa_mask);
action.sa_flags = SA_SIGINFO;
sigaction (SIGCHLD, &action, NULL);
void ChildHandler (int sig, siginfo_t *sip, void *notused)
{
int x= 7;
int y = 9;
int z = x + y ;
int y=1;
}
функция ChildHandler
вызывается при поступлении SIGCHLD
.
Как это реализовать? нужно ли защищать ChildHandler
с помощью блокировки?
В противном случае в примере, если 2 сигнала будут получены одновременно, код Кала будет неправильным