перехват SIGINT в многопоточной программе

Я пишу многопоточную программу, в которой я хочу обрабатывать возможную команду Ctrl-C от пользователя к прекратить исполнение. Насколько я знаю, нет никакой гарантии, что основной поток, который может отменить каждый рабочий поток, поймает сигнал. Следовательно, необходимо ли иметь другой обработчик сигналов для кода рабочего потока, чтобы кто-нибудь мог уловить сигнал, если он поступит, или есть другой способ сделать это, имея обработчик сигнала только в коде основного потока?

7
задан Donal Fellows 6 June 2011 в 09:39
поделиться