Я хочу использовать setitimer() (или менее вероятно, alarm()) в многопоточном процессе в Linux 2.6+ с NPCL-совместимым libc. Какой поток получит sigalarm (SIGALRM) из ядра?
Спасибо.
2014-04 update: Как установить setitimer() в многопоточной программе, если я хочу написать служебную программу профилирования, такую как gpperftools cpuprofile; но в моем инструменте я хочу поддерживать как динамически связанные программы (поэтому можно добавить мою собственную библиотеку для профилирования init) и статически связанные программы (без возможности делать ^^^^^^).
Мой текущий инструмент профилирования работает с настройкой setitimer сразу после fork() и до exec(), а также использует ptrace для получения контроля над целевой программой и для захвата SIGPROF/SIGVPROF/SIGALRM, сгенерированного с помощью setitimer. Я не знаю, как это работает с многопоточными программами.