5

Tengo una aplicación Silverlight bastante simple, últimamente hemos tenido informes de usuarios de la aplicación que falla después de varias horas de uso (4+). Empezamos a profundizar en la aplicación y notamos que la porción no administrada de la memoria que utiliza la aplicación comienza muy alta y continúa creciendo sin control. Los otros montones parecen estar bien administrados. Investigué mucho e incluso fui tan lejos al eliminar todas las imágenes de mi aplicación y la memoria no administrada continúa creciendo.¿Por qué mi aplicación Silverlight usa tanta memoria no administrada?

Estoy confundido en este momento sobre qué es exactamente lo que consume toda la memoria no administrada en mi aplicación y qué puedo hacer al respecto. Aquí hay una instantánea de mi aplicación después de la carga inicial, ya que puede ver que ya está usando más de 100 MB de espacio de memoria no administrado. Solo busco orientación aquí sobre qué objetos podrían estar en la memoria no administrada y qué hacer para reducir la cantidad de memoria no administrada que está usando mi aplicación. ¡Gracias!

Ants Memory Snapshot

que he tomado otra instantánea o dos utilizando .NET de memoria Profiler y parece que el Kernel-HeapMemory es el trozo más grande. No estoy seguro si esto ayuda mucho, pero pensé que lo publicaría de todos modos.

enter image description here

+0

¿Tiene el componente WebBrowser incrustado en su aplicación Silverlight? – kol

+0

No, no estamos usando el control WebBrowser. –

+0

¿No estarías creando muchos WriteableBitmaps? –

Respuesta

1

Ha intentado la CLR Profiler for Silverlight? Lo he usado con cierto éxito en el pasado para solucionar problemas de memoria.

+0

Parece una herramienta decente, pero no parece ser muy útil para crear perfiles de memoria no administrada. No parece tener ningún problema con la parte administrada de mi aplicación. Simplemente no puedo entender por qué continúa consumiendo más y más memoria no administrada. –

+0

Es bueno señalar que es un problema con la memoria * no administrada *. –

Cuestiones relacionadas