Megosztás a következőn keresztül:


<gcServer> elem

Megadja, hogy a közös nyelvi futtatókörnyezet futtatja-e a kiszolgáló szemétgyűjtését.

<konfiguráció>
   <Runtime>
     <gcServer>

Szemantika

<gcServer
   enabled="true|false"/>

Attribútumok és elemek

A következő szakaszok az attribútumokat, a gyermekelemeket és a szülőelemeket ismertetik.

Attributes

Attribute Description
enabled Kötelező attribútum.

Megadja, hogy a futtatókörnyezet futtatja-e a kiszolgáló szemétgyűjtését.

engedélyezett attribútum

Érték Description
false Nem futtat kiszolgálói szemétgyűjtést. Ez az alapértelmezett érték.
true Kiszolgáló szemétgyűjtését futtatja.

Gyermekelemek

Nincs.

Szülőelemek

Elem Description
configuration A közös nyelvi futtatókörnyezet és .NET-keretrendszer alkalmazások által használt összes konfigurációs fájl gyökéreleme.
runtime Információkat tartalmaz a szerelvénykötésről és a szemétgyűjtésről.

Megjegyzések

A közös nyelvi futtatókörnyezet (CLR) kétféle szemétgyűjtést támogat: a munkaállomás szemétgyűjtését, amely minden rendszeren elérhető, valamint a többprocesszoros rendszereken elérhető kiszolgálói szemétgyűjtést. gcServer Az elem használatával szabályozhatja a CLR által végzett szemétgyűjtés típusát. GCSettings.IsServerGC A tulajdonság használatával állapítsa meg, hogy engedélyezve van-e a kiszolgáló szemétgyűjtése.

Az egyprocesszoros számítógépek esetében az alapértelmezett munkaállomás szemétgyűjtésének kell lennie a leggyorsabb megoldásnak. A munkaállomás vagy a kiszolgáló kétprocesszoros számítógépekhez is használható. A kiszolgáló szemétgyűjtésének két processzornál kell a leggyorsabb megoldásnak lennie. A többprocesszoros kiszolgálórendszerek általában letiltják a kiszolgálói GC-t, és inkább munkaállomás-csoportházirend-objektumot használnak, amikor egy kiszolgálóalkalmazás számos példánya fut ugyanazon a gépen.

Ez az elem csak az alkalmazáskonfigurációs fájlban használható; a rendszer figyelmen kívül hagyja, ha a gép konfigurációs fájljában van.

Megjegyzés:

A .NET-keretrendszer 4- és korábbi verzióiban az egyidejű szemétgyűjtés nem érhető el, ha a kiszolgáló szemétgyűjtése engedélyezve van. A .NET-keretrendszer 4.5-től kezdve a kiszolgáló szemétgyűjtése egyidejű. Ha nem egyidejű kiszolgálói szemétgyűjtést szeretne használni, állítsa az elemet a gcServer következőre true , a gcConcurrent elemet pedig a következőre false.

A .NET-keretrendszer 4.6.2-től kezdve a következő elemeket is használhatja a kiszolgálói GC konfigurálásához:

  • GCNoAffinitize, amely meghatározza, hogy van-e affinitás a kiszolgálói GC-halom és a processzorok között. Alapértelmezés szerint minden processzorhoz egy kiszolgálói GC-halom tartozik.

  • GCHeapCount, amely korlátozza a folyamat által használt halmok számát.

  • GCHeapAffinitizeMask, amely meghatározza az affinitást a rendelkezésre álló kiszolgálói GC-halom és az egyes processzorok között.

Example

Az alábbi példa engedélyezi a kiszolgáló szemétgyűjtését:

<configuration>
   <runtime>
      <gcServer enabled="true"/>
   </runtime>
</configuration>

Lásd még