Я пишу расширение Python C, которое содержит несколько C-потоков. В конце концов эти потоки отправляются SIGTERM, чтобы они могли выйти. Когда я перебираю расширение в GDB, эти потоки успешно завершаются, и я возвращаюсь обратно к интерпретатору Python, где я могу продолжать выполнять команды. Он также успешно работает в интерпретаторе Python.
Однако, когда я пытаюсь запустить файл Python с аналогичным поведением, вся программа завершает работу после отправки сигнала в дочерний поток.
Меня смущает, как сигнал распространяется от потоков к самой программе, любые указания приветствуются.