Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
elemento
Especifica o número de heaps/threads a usar para a recolha de lixo do servidor.
<Configuração>
<Duração>
<GCHeapCount>
Sintaxe
<GCHeapCount
enabled="nn"/>
Atributos e elementos
As seções a seguir descrevem atributos, elementos filho e elementos pai.
Attributes
| Attribute | Description |
|---|---|
enabled |
Atributo obrigatório. Especifica o número de heaps a usar para a recolha de lixo do servidor. O número real de heaps é o mínimo entre o número de heaps que especifica e o número de processadores que o seu processo pode usar. |
atributo habilitado
| Valor | Description |
|---|---|
nn |
O número de heaps a usar para o GC do servidor. |
Elementos filho
Nenhum.
Elementos pai
| Elemento | Description |
|---|---|
configuration |
O elemento raiz em cada arquivo de configuração usado pelo Common Language Runtime e aplicativos .NET Framework. |
runtime |
Contém informações sobre encadernação de montagem e recolha de lixo. |
Observações
Por defeito, os threads GC do servidor são afinizados de forma rígida com o respetivo CPU, de modo que existe um heap GC, um thread GC de servidor e um thread GC de servidor em segundo plano para cada processador. A partir do .NET Framework 4.6.2, podes usar o GCHeapCount elemento para limitar o número de heaps usados pela tua aplicação para GC de servidor. Limitar o número de heaps usados para GC de servidor é particularmente útil para sistemas que executam múltiplas instâncias de uma aplicação servidor.
O GCHeapCount é normalmente usado juntamente com outros dois flags:
GCNoAffinitize, que controla se os threads/heaps de GC do servidor são affinizados com CPUs.
GCHeapAffinitizeMask, que controla a afinidade dos threads/heaps GC com CPUs.
Se GCHeapCount estiver definido e GCNoAffinitize desativado (a sua configuração padrão), existe uma afinidade entre os threads/heaps nn GC e os primeiros processadores nn . Pode usar o GCHeapAffinitizeMask elemento para especificar quais os processadores usados pelos heaps GC do servidor do processo. Caso contrário, se vários processos do servidor estiverem a correr num sistema, o uso do processador irá sobrepor-se.
Se GCHeapCount estiver definido e GCNoAffinitize ativado, o coletor de lixo limita o número de processadores usados para GC de servidor, mas não afinitiza os heaps e processadores de GC.
Example
O exemplo seguinte indica que uma aplicação usa GC de servidor com 10 heaps/threads. Como não queres que esses heaps se sobreponham com heaps de outras aplicações a correr no sistema, usas o GCHeapAffinitizeMask para especificar que o processo deve usar CPUs 0 a 9.
<configuration>
<runtime>
<gcServer enabled="true"/>
<GCHeapCount enabled="10"/>
<GCHeapAffinitizeMask enabled="1023"/>
</runtime>
</configuration>
O exemplo seguinte não afinitiza threads GC de servidor e limita o número de heaps/threads GC a 10.
<configuration>
<runtime>
<gcServer enabled="true"/>
<GCHeapCount enabled="10"/>
<GCNoAffinitize enabled="true"/>
</runtime>
</configuration>