Elemento <gcConcurrent>
Especifica si Common Language Runtime ejecuta la recolección de elementos no utilizados en un subproceso independiente.
<configuración>
<runtime>
<gcConcurrent>
Sintaxis
<gcConcurrent
enabled="true|false"/>
Atributos y elementos
En las siguientes secciones se describen los atributos, los elementos secundarios y los elementos primarios.
Atributos
Atributo | Descripción |
---|---|
enabled |
Atributo necesario. Especifica si CLR ejecuta la recolección de elementos no utilizados simultáneamente. |
Atributo enabled
Valor | Descripción |
---|---|
false |
No ejecuta la recolección de elementos no utilizados simultáneamente. |
true |
Ejecuta la recolección de elementos no utilizados simultáneamente. Este es el valor predeterminado. |
Elementos secundarios
Ninguno.
Elementos primarios
Elemento | Descripción |
---|---|
configuration |
Elemento raíz de cada archivo de configuración usado por las aplicaciones de Common Language Runtime y .NET Framework. |
runtime |
Contiene información del enlace del ensamblado y de la recolección de elementos no utilizados. |
Comentarios
Antes de .NET Framework 4, la recolección de elementos no utilizados de estación de trabajo permitía la recolección de elementos no utilizados simultánea, que se realizaba en segundo plano en un subproceso independiente. En .NET Framework 4, la recolección de elementos no utilizados simultánea se reemplazó por GC, que también realiza la recolección de elementos no utilizados en segundo plano en un subproceso independiente. A partir de .NET Framework 4.5, la recolección de elementos no utilizados de servidor se puede realizar en segundo plano. El elemento gcConcurrent controla si CLR realiza la recolección de elementos no utilizados simultáneamente o en segundo plano, si está disponible o si realiza la recolección de elementos no utilizados en primer plano.
Para deshabilitar la recolección de elementos no utilizados en segundo plano
Advertencia
A partir de .NET Framework 4, la recolección de elementos no utilizados en segundo plano reemplaza a la recolección de elementos no utilizados simultánea. Los términos simultánea y en segundo plano se usan indistintamente en la documentación de .NET Framework. Para deshabilitar la recolección de elementos no utilizados en segundo plano, use el elemento gcConcurrent como se describe en este artículo.
De forma predeterminada, CLR usa la recolección de elementos no utilizados simultánea, que está optimizada para la latencia. Si la aplicación requiere mucha interacción por parte del usuario, deje habilitada la recolección de elementos no utilizados simultánea para minimizar el tiempo que la aplicación debe parar para realizar la recolección de elementos no utilizados. Si establece el atributo enabled
del elemento gcConcurrent en false
, el runtime usa la recolección de elementos no utilizados no simultánea, que se optimiza para el rendimiento.
El archivo de configuración siguiente deshabilita la recolección de elementos no utilizados en segundo plano:
<configuration>
<runtime>
<gcConcurrent enabled="false"/>
</runtime>
</configuration>
Si hay una opción de configuración gcConcurrentSetting en el archivo de configuración del equipo, define el valor predeterminado para todas las aplicaciones de .NET Framework. El archivo de configuración del equipo reemplaza el archivo de configuración de la aplicación.
Para obtener más información sobre la recolección de elementos no utilizados en simultánea y en segundo plano, vea Recolección de elementos no utilizados en segundo plano.
Ejemplo
En el ejemplo siguiente se habilita la recolección de elementos no utilizados en segundo plano:
<configuration>
<runtime>
<gcConcurrent enabled="true"/>
</runtime>
</configuration>