Cómo registrar una stack de llamadas cuando se ejecuta un progtwig?

¿Hay alguna manera de get la stack de llamadas? Digamos que tengo una function que recibe el llamado de muchas otras funciones, pero necesito saber quién la llamó.

Gracias

Por supuesto que lo hay. Si puedes usar el framework Cocoa:

NSLog(@"%@", [NSThread callStackSymbols]); 

( Documentación )

Si no puede usarlo:

 #include <execinfo.h> int size = 256; void *stack[size]; size = backtrace(stack, size); char **syms = backtrace_symbols(stack, size); for (int i = 0; i < size; i++) { printf("Frame #%d: %s\n", i, syms[i]); } free(syms); 

( Documentación )

Ver NSThread callStackSymbols .