En C en Solaris 10, me gustaría obtener la pila de llamadas de un subproceso arbitrario dentro de un proceso.Obtener pila de llamadas desde cualquier subproceso dentro de C
Tengo muchos subprocesos de trabajo y un subproceso que los supervisa a todos para detectar bucles estrechos y bloqueos. La función que me gustaría implementar es que el subproceso de supervisión imprima varias veces la pila de llamadas del subproceso "bloqueado" antes de que lo mate.
Sé cómo implementar esto haciendo que el subproceso de supervisión ejecute pstack (con sistema() o mediante bifurcación). Pero me gustaría poder implementar esta función en C. ¿Hay alguna manera de hacer esto?
Sé cómo hacer que un hilo imprima su PROPIA pila de llamadas, recorriendo la pila, lo cual es útil si golpea una afirmación, pero no cómo hacer esto para otra secuencia dentro del mismo proceso.
Gracias por cualquier ayuda. NickB
Pero, ¿cómo permite eso que un hilo obtenga la pila de llamadas de otro hilo? – NickB