¿Hay una manera simple de obtener todas las variables locales en el marco de la pila actual en C # (o CIL)

Siguiendo mi pregunta anterior, en la que quería volcar todas las variables en la pila (desde el marco actual y todo el anterior) que se pueden ver aquí: ¿Hay alguna forma de examinar las variables de la pila en tiempo de ejecución en C #?

Me sugirieron que interceptara las llamadas manualmente o usara el marco AOP como PostSharp para simplificar dicha tarea. Miré PostSharp y los argumentos de intercepción no incluyen las variables en el marco de la pila actual. Me pregunto si hay una manera simple de obtener automáticamente todas las variables locales en el marco de la pila actual. Supongo que puedo realizar análisis de código y generar código que copia todos esos valores en una colección, pero tal vez haya un mecanismo incorporado que lo haga.

Gracias de antemano por cualquier sugerencia

EDIT: debería haber dado más detalles de por qué quiero hacer esto. Quiero poder suspender la ejecución en medio de un método. Si tuviera el contenido de la pila, podría reanudar la ejecución más tarde, o incluso serializarlo y continuarlo en otra máquina (suponiendo que sea un código relativamente simple, por lo que no hay hilos ni E / S, por ejemplo). Está bien ejecutar una herramienta de análisis de código que me permita generar automáticamente código adicional que guarde este estado. Creo que probablemente tendré que analizar el CIL para hacer esto.

Respuestas a la pregunta(3)

Su respuesta a la pregunta