Quiero usar setitimer()
(o menos probable, alarm()
) en proceso multiproceso en Linux 2.6+ con NPTL-enabled libc. ¿Qué hilo recibirá sigalarm (SIGALRM)
de kernel?setitimer, SIGALRM y proceso multiproceso (linux, c)
Gracias.
actualización 2014-04: ¿Cómo debo configurar el setitimer()
en el programa multiproceso, si quiero escribir una utilidad de creación de perfiles como cpuprofile de gperftools; pero en mi herramienta quiero apoyar tanto los programas vinculados dinámicamente (de modo que es posible inyectar mi propia biblioteca para iniciar el perfilado) como los programas vinculados estáticamente (sin la posibilidad de hacer ^^^^^^).
Mi herramienta de perfilado actual funciona con la configuración setitimer
justo después fork()
y antes exec()
, y también se utiliza ptrace
para obtener el control sobre el programa de destino y para secuestrar SIGPROF/SIGVPROF/SIGALRM generada por el setitimer
. No tengo una idea exacta de cómo funciona con los programas multiproceso.
es lo mismo para freebsd y solaris? – osgx