Estoy programando en C en Visual Studio 2005. Tengo un programa de subprocesos múltiples, pero eso no es especialmente importante aquí.Determinación del espacio de pila con Visual Studio
¿Cómo puedo determinar (aproximadamente) cuánto espacio de pila usan mis hilos?
La técnica que estaba planeando utilizar es establecer la memoria de la pila en un valor predeterminado, digamos 0xDEADBEEF, ejecutando el programa durante un tiempo prolongado, pausando el programa e investigando la pila.
¿Cómo leo y escribo la memoria de la pila con Visual Studio?
EDITAR: Ver, por ejemplo, "How to determine maximum stack usage." Esa pregunta se refiere a un sistema integrado, pero aquí estoy tratando de determinar la respuesta en una PC normal.
Tu comentario no es exactamente verdad. Tocar la página en cuestión está bien, de verdad. La técnica es escribir toda la memoria relevante con un valor específico, y luego de un largo tiempo de operación, ver cuánta memoria ya no tiene ese valor. – JXG
Qupting Microsoft: "Un intento de leer o escribir en una página de protección hace que el sistema genere una excepción STATUS_ACCESS_VIOLATION y apague el estado de la página de protección. Las páginas de guardia actúan como una alarma de acceso de una sola vez". No, la lectura no está exenta. – MSalters
Creo que estamos hablando el uno del otro. – JXG