Me gustaría escribir una aplicación simple que haga un seguimiento de su uso de memoria actual, cantidad de objetos creados, etc. En C++ normalmente anularía el nuevo operador, pero por razones obvias no puedo hacer esto en C#. ¿Hay alguna manera de hacer esto sin usar un generador de perfiles?¿Es posible rastrear el uso de memoria en una aplicación C# sin usar un generador de perfiles?
Respuesta
Es posible que desee comenzar con el recolector de basura. MSDN tiene algunos miembros enumerados en here que pueden mostrarle cómo hacer algunas cosas, como obtener la cantidad total de memoria que cree que está asignada, cuántas veces ha recolectado el GC. Algo más avanzado que eso, como obtener un recuento de los objetos de su ensamblaje cargado y probablemente tendrá que usar un generador de perfiles o escribir algo usted mismo.
.NET Los contadores de rendimiento de memoria le proporcionarán información agregada, pero no incluyen contadores de objetos. Para eso, necesitarás un generador de perfiles.
mediante WMI Proveedores:
para saber el uso de procesos (W2K3/2K8):
"SELECT IDProcess, PercentPrivilegedTime, PercentProcessorTime, PercentUserTime FROM Win32_PerfFormattedData_PerfProc_Process where Name='process_name.exe'"
para identificar su sitio de utilizar este:
"SELECT ProcessId, CommandLine, WorkingSetSize, ThreadCount, PrivatePageCount, PageFileUsage, PageFaults, HandleCount, CreationDate, Caption FROM Win32_Process where Caption='process_name.exe'"
Utilice esta herramienta para WQL teste
O usa la herramienta PerfMon.
Para obtener más información sobre los contadores, vea Windows System Resource Manager Accounting, al final del doc.
Buena suerte.
- 1. ¿Es el generador de analizadores ANTLR el mejor para una aplicación C++ con memoria limitada?
- 2. ¿Cómo evitar quedarse sin memoria en la aplicación de uso de memoria alta? C/C++
- 3. ¿Es posible rastrear asignación/desasignación?
- 4. ¿Dónde puedo encontrar un generador de perfiles para aplicaciones C# para usar en Visual Studio 2008?
- 5. Perfiles de uso de memoria Perl y detección de fugas?
- 6. ¿Cuál es el mejor generador de perfiles gratis de C++ para Windows?
- 7. ¿Supervisa el uso de memoria en una aplicación de iphone?
- 8. ¿Hay alguna manera de recuperar el uso de la memoria actual de una aplicación C#?
- 9. ¿Es posible rastrear una cadena dentro de un binario IPA?
- 10. Uso de la memoria de generación de perfiles en Mathematica
- 11. ¿Cómo debo interpretar el resultado del generador de perfiles ghc?
- 12. Java perfiles de uso de disco
- 13. ¿Cómo rastrear una fuga de memoria mod_perl?
- 14. ¿Es posible reducir el uso de la memoria MongoDB?
- 15. Utilizando el generador de perfiles "muy dormido" al perfil DLL
- 16. Analizador de Visual Studio, cómo rastrear el uso de [clr.dll]
- 17. Cómo reducir el uso de memoria de una aplicación WPF
- 18. El temporizador aumenta el uso de memoria en la aplicación C#
- 19. ¿Es posible usar un dispositivo para ejecutar una aplicación exclusivamente?
- 20. ¿Puedo usar flex sin el generador de Flex?
- 21. ¿Es posible inicializar una estructura sin usar una función?
- 22. ¿Es posible convertir un tipo de lista en un generador sin iterar?
- 23. ¿Es posible depurar un dll generador de C++ desde Delphi si tengo el código fuente dll?
- 24. ¿Cómo activo el generador de perfiles de la función PostgreSQL?
- 25. Cómo medir la memoria gráfica Uso de una aplicación WebGL
- 26. ¿Es posible usar un ListView sin ListActivity en Mono Android?
- 27. ¿Es posible forzar el uso de "usar" para clases desechables?
- 28. Limitar el uso de memoria de una aplicación .net
- 29. ¿Es posible usar Panda3D dentro de una aplicación wxPython?
- 30. ¿Es posible usar una lista de genéricos sin tipo en C#?