Colecciones inducidas
En la mayoría de los casos, el recolector de elementos no utilizados puede determinar cuál es el mejor momento para realizar una recolección y se debe permitir su ejecución de forma independiente. Hay ocasiones excepcionales en que una recolección forzada puede mejorar el rendimiento de la aplicación. En estos casos, se puede inducir la recolección de elementos no utilizados utilizando el método Collect para forzar una recolección de elementos no utilizados.
Utilice el método Collect cuando haya una reducción significativa de la cantidad de memoria que se está usando en un punto definido del código de la aplicación. Por ejemplo, si la aplicación utiliza un cuadro de diálogo complejo que tiene varios controles, llamar a Collect cuando se cierra el cuadro de diálogo podría mejorar el rendimiento porque reclama inmediatamente la memoria. Asegúrese de que la aplicación no induce la recolección de elementos no utilizados con demasiada frecuencia porque este hecho puede reducir el rendimiento si el recolector de elementos no utilizados está intentando reclamar objetos de forma infructuosa. El modo Optimized permite al recolector de elementos no utilizados determinar si ha de realizar o no recolecciones en función de que sean productivas.
Modo de GC
Puede utilizar la sobrecarga del método GC.Collect que toma un valor de GCCollectionMode para especificar el comportamiento de una recolección forzada, como se describe en la tabla siguiente.
Miembro |
Descripción |
---|---|
Utiliza el valor designado como configuración de recolección de elementos no utilizados predeterminada de la versión de .NET Framework que se está ejecutando. |
|
Obliga a que la recolección de elementos no utilizados se produzca inmediatamente. Equivale a llamar a GC.Collect(). |
|
Permite al recolector de elementos no utilizados determinar si la hora actual es la adecuada para reclamar objetos. El recolector de elementos no utilizados puede determinar que una recolección no esté justificada por su insuficiente productividad, en cuyo caso volverá sin reclamar objetos. |