Compartir a través de


Forzar una recolección de elementos no utilizados

La clase GC del recolector de elementos no utilizados dispone del método GC.Collect, que puede utilizar para dar a la aplicación control directo sobre el recolector de elementos no utilizados. En general, debe evitar llamar a cualquiera de los métodos del recolector y dejar que se ejecute de forma independiente. En la mayoría de los casos, el recolector de elementos no utilizados es mejor al determinar el momento más apropiado para la realización de la recolección. No obstante, en alguna ocasión provocar una recolección podría mejorar el rendimiento de la aplicación. El método GC.Collect podría ser apropiado para aquellos casos en que hay una reducción significativa de la cantidad de memoria que se está utilizando en un punto concreto del código de la aplicación. Por ejemplo, una aplicación podría utilizar un documento que hace referencia a un número significativo de recursos no administrados. Cuando la aplicación cierra el documento, sabe con certeza que los recursos que el documento ha utilizado ya no son necesarios. Por motivos de rendimiento, es conveniente liberarlos todos al mismo tiempo. Para obtener más información, vea el método GC.Collect.

Antes de que el recolector de elementos no utilizados realice la recolección, suspende todos los subprocesos en ejecución. Si llama al método GC.Collect más veces de las necesarias, puede afectar al rendimiento. También debe tener cuidado de no colocar código que llame a GC.Collect en un punto del programa donde los usuarios puedan llamarlo con frecuencia. Esto anularía el motor de optimización del recolector de elementos no utilizados, que determina cuál es el mejor momento para realizar una recolección.

Vea también

Programar para la recolección de elementos no utilizados | Clase GC