Is a mutex
or some kind of synchronization necessary in this situation
static int flag;
void sighandler(int sigid)
{
if (sigid != SIGINT)
return;
flag = 1;
}
int main(void)
{
if (signal(SIGINT, sighandler) == SIG_ERR)
return -1; /* cannot handle it ? */
while (flag == 0)
{
do_things();
}
return 0;
}