Elemento <gcServer>
Especifica si Common Language Runtime ejecuta la recopilación de elementos no utilizados de servidor.
<configuración>
<runtime>
<gcServer>
Sintaxis
<gcServer
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 Common Language Runtime ejecuta la recolección de elementos no utilizados de servidor. |
Atributo habilitado
Valor | Descripción |
---|---|
false |
No ejecuta la recolección de elementos no utilizados de servidor. Este es el valor predeterminado. |
true |
Ejecuta la recolección de elementos no utilizados de servidor. |
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
Common Language Runtime (CLR) admite dos tipos de recolección de elementos no utilizados: de estación de trabajo, que está disponible en todos los sistemas, y de servidor, que está disponible en sistemas multiprocesador. Use el elemento gcServer para controlar el tipo de recolección de elementos no utilizados que CLR realiza. Use la propiedad GCSettings.IsServerGC para determinar si la recolección de elementos no utilizados de servidor está habilitada.
Para equipos con un solo procesador, la recolección de elementos no utilizados de estación de trabajo predeterminada será la opción más rápida. En los equipos con dos procesadores se puede usar la opción de estación de trabajo o de servidor. La recolección de elementos no utilizados de servidor será la opción más rápida si hay más de dos procesadores. Normalmente, los sistemas de servidor multiprocesador deshabilitan la recolección de elementos no utilizados de servidor y usan la recolección de elementos no utilizados de estación de trabajo en su lugar cuando muchas instancias de una aplicación de servidor se ejecutan en la misma máquina.
Este elemento se puede usar solo en el archivo de configuración de la aplicación; se omite si se encuentra en el archivo de configuración del equipo.
Nota
En .NET Framework 4 y versiones anteriores, la recolección de elementos no utilizados simultánea no está disponible si la recolección de elementos no utilizados de servidor está habilitada. A partir de .NET Framework 4.5, la recolección de elementos no utilizados de servidor es simultánea. Para usar la recolección de elementos no utilizados de servidor no simultánea, establezca el elemento gcServer en true
y el elemento gcConcurrent en false
.
A partir de .NET Framework 4.6.2, también puede usar los siguientes elementos para configurar la recolección de elementos no utilizados de servidor:
GCNoAffinitize, que especifica si hay una afinidad entre los montones de recolección de elementos no utilizados del servidor y los procesadores. De forma predeterminada, hay un montón de recolección de elementos no utilizados para cada procesador.
GCHeapCount, que limita el número de montones usados por un proceso.
GCHeapAffinitizeMask, que define la afinidad entre los montones de GC de servidor disponibles y los procesadores individuales.
Ejemplo
En el ejemplo siguiente se habilita la recolección de elementos no utilizados de servidor:
<configuration>
<runtime>
<gcServer enabled="true"/>
</runtime>
</configuration>