Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Actualización: noviembre 2007
Este tema es aplicable a:
Edición |
Visual Basic |
C# |
C++ |
Web Developer |
|---|---|---|---|---|
Express |
![]() |
![]() |
Sólo para código nativo |
![]() |
Standard |
![]() |
![]() |
Sólo para código nativo |
![]() |
Pro y Team |
![]() |
![]() |
Sólo para código nativo |
![]() |
Leyenda de la tabla:
![]() |
Se aplica |
![]() |
No procede |
![]() |
Comando o comandos ocultos de forma predeterminada. |
La función CMemoryState::Difference examina dos objetos de estado de memoria y detecta cualquier objeto no desasignado del montón entre los estados inicial y final. Después de Cómo: Tomar instantáneas de la memoria y compararlas mediante CMemoryState::Difference, puede llamar a CMemoryState::DumpStatistics para obtener información acerca de los objetos que no se han desasignado.
Considere el ejemplo siguiente:
if( diffMemState.Difference( oldMemState, newMemState ) )
{
TRACE( "Memory leaked!\n" );
diffMemState.DumpStatistics();
}
Un volcado de ejemplo tiene el siguiente aspecto:
0 bytes in 0 Free Blocks
22 bytes in 1 Object Blocks
45 bytes in 4 Non-Object Blocks
Largest number used: 67 bytes
Total allocations: 67 bytes
Los bloques libres son bloques cuya desasignación se retrasa si afxMemDF se configuró con el valor delayFreeMemDF. Para obtener más información, vea Cómo: Habilitar el diagnóstico de memoria.
Los bloques de objetos ordinarios, que se muestran en la segunda línea, permanecen asignados en el montón.
Entre los bloques que no son objetos se incluyen las matrices y las estructuras cuya memoria se asigna con new. En este caso, se asignó memoria en el montón para cuatro bloques que no son objetos, pero esa memoria no se desasignó.
Largest number used proporciona la memoria máxima utilizada por el programa en cualquier instante.
Total allocations proporciona la cantidad total de memoria utilizada por el programa.
Vea también
Tareas
Cómo: Tomar instantáneas de la memoria
.gif)
.gif)
.gif)