delphi debugging memory-leaks fastmm

delphi - ¿Cómo obtener los nombres de estructuras hechas a medida cuyas instancias han filtrado la memoria?



debugging memory-leaks (1)

Tal vez RTTI ampliado (Delphi 2010 y más reciente) se puede usar para crear un diccionario de tipo, que solo contiene punteros tipoinfo y nombres de todos los tipos "no pertenecientes a clase".

Esta característica podría habilitarse con una definición condicional para evitar su sobrecarga en el funcionamiento normal.

Estoy trabajando en un analizador que irá a través de un informe de fuga de memoria FASTMM4 y almacenará todos los datos relevantes en una estructura / clase hecha a medida. Uso VirtualTreeView para mostrar cada clase que tiene instancias filtradas como un nodo en el árbol. El árbol : tenga en cuenta que el PRIMER nodo dice desconocido. Esto se debe a que FASTMM llama a un método AClass para determinar si el clima es una clase o no. Cuando encuentra estructuras personalizadas, las marca como desconocidas, lo que no hace que mi analizador de informes sea muy eficaz, ya que la mayoría de las pérdidas de memoria provienen de estas estructuras y registros personalizados.

Pregunta: ¿Hay alguna manera de usar DebugInfo o alguna otra herramienta como JVCL para reunir esos símbolos de depuración y comparar sus direcciones de memoria con las que se encuentran en el archivo de informe de pérdida de memoria? Me gustaría que mi árbol deje de mostrarse DESCONOCIDO y muestre los nombres de estas estructuras personalizadas. Soy nuevo en la programación de Delphi, e incluso más nuevo para hacer frente a fugas de memoria, ¡así que cualquier ayuda significaría mucho!