<GCHeapAffinitizeMask> prvek

Definuje spřažení mezi haldami GC a jednotlivými procesory.

<konfigurace>
   <runtime>
     <GCHeapAffinitizeMask>

Syntaxe

<GCHeapAffinitizeMask
   enabled="nnnn"/>

Atributy a prvky

Následující části popisují atributy, podřízené prvky a nadřazené prvky.

Attributes

Vlastnost Description
enabled Povinný atribut.

Určuje spřažení mezi haldami GC a jednotlivými procesory.

atribut enabled

Hodnota Description
nnnn Desetinná hodnota, která tvoří bitovou masku definující spřažení mezi haldami serveru GC a jednotlivými procesory.

Podřízené prvky

Žádné.

Nadřazené prvky

prvek Description
configuration Kořenový prvek v každém konfiguračním souboru, který je používán modulem Common Language Runtime (CLR) a aplikacemi rozhraní .NET Framework.
runtime Obsahuje informace o vazbě sestavení a uvolňování paměti.

Poznámky

Ve výchozím nastavení jsou vlákna uvolňování paměti serveru pevně spřažení s příslušnými procesory, takže pro každý procesor existuje jedna halda GC, jedno vlákno GC serveru a jedno vlákno uvolňování paměti serveru na pozadí. Počínaje rozhraním .NET Framework 4.6.2 můžete pomocí GCHeapAffinitizeMask prvku řídit spřažení mezi haldami serveru a procesory, pokud je počet hald omezený elementem GCHeapCount .

GCHeapAffinitizeMask se obvykle používá spolu se dvěma dalšími příznaky:

  • GCNoAffinitize, která řídí, zda jsou spřažena vlákna nebo haldy serveru s procesory. Atribut enabledGCNoAffinitize elementu musí být false (jeho výchozí hodnota) pro GCHeapAffinitizeMask nastavení, které se má použít.

  • GCHeapCount, který omezuje počet hald používaných procesem pro server GC. Ve výchozím nastavení je pro každý procesor jedna halda.

nnnn je bitová maska vyjádřená jako desetinná hodnota. Bit 0 bajtů představuje procesor 0, bit 1 bajtu představuje procesor 1 atd. Například:

<GCHeapAffinitizeMask enabled="1023"/>

Hodnota 1023 je 0x3FF nebo 0011 1111 1111b. Proces používá 10 procesorů od procesoru 0 do procesoru 9.

Example

Následující příklad označuje, že aplikace používá server GC s 10 haldy/vlákna. Vzhledem k tomu, že nechcete, aby se tyto haldy překrývaly s haldami z jiných aplikací spuštěných v systému, použijte GCHeapAffinitizeMask k určení, že proces by měl používat procesory 0 až 9.

<configuration>
   <runtime>
      <gcServer enabled="true"/>
      <GCHeapCount enabled="10"/>
      <GCHeapAffinitizeMask enabled="1023"/>
   </runtime>
</configuration>

Viz také