Как установить свой обработчик сигналов SIGUSR1 и SIGUSR2?
По-дефолту пользовательские сигналы SIGUSR1 и SIGUSR2 завершают процесс или поток. Как сделать так, чтобы установить им свой обработчик? Пытался читать на эту тему различные статьи, но так как я новичок в этой теме - перенести для своих нужд не получилось.
А нужда в следующем - есть ряд потоков-производителей (pthread), которые в цикле исполняют ряд инструкций и в конце каждой итерации ожидают сигнал (sigwait) SIGURS1 от главного потока-потребителя, и только после получения сигнала переходят к следующей итерации. Но из-за завершения по-дефолту они, следовательно, завершаются.
Т.е. тут нужен только сам факт получения этих сигналов для перехода к следующей итерации, а они завершают процесс.