<gcServer> , element

Określa, czy środowisko uruchomieniowe języka wspólnego uruchamia odzyskiwanie pamięci serwera.

<Konfiguracji>
  <Środowiska wykonawczego>
    <gcServer>

Składnia

<gcServer
   enabled="true|false"/>

Atrybuty i elementy

W poniższych sekcjach opisano atrybuty, elementy podrzędne i elementy nadrzędne.

Atrybuty

Atrybut Opis
enabled Atrybut wymagany.

Określa, czy środowisko uruchomieniowe uruchamia odzyskiwanie pamięci serwera.

włączony atrybut

Wartość Opis
false Nie uruchamia odzyskiwania pamięci serwera. Jest to opcja domyślna.
true Uruchamia odzyskiwanie pamięci serwera.

Elementy podrzędne

Brak.

Elementy nadrzędne

Element Opis
configuration Element główny w każdym pliku konfiguracji używanym przez środowisko uruchomieniowe języka wspólnego i aplikacje programu .NET Framework.
runtime Zawiera informacje dotyczące powiązania zestawu oraz wyrzucania elementów bezużytecznych.

Uwagi

Środowisko uruchomieniowe języka wspólnego (CLR) obsługuje dwa typy odzyskiwania pamięci: odzyskiwanie pamięci stacji roboczej, które jest dostępne we wszystkich systemach, oraz odzyskiwanie pamięci serwera, które jest dostępne w systemach wieloprocesorowych. Użyj elementu gcServer , aby kontrolować typ odzyskiwania pamięci wykonywanej przez clR. Użyj właściwości , GCSettings.IsServerGC aby określić, czy funkcja odzyskiwania pamięci serwera jest włączona.

W przypadku komputerów z jednym procesorem domyślne odzyskiwanie pamięci stacji roboczej powinno być najszybszym rozwiązaniem. Stacji roboczej lub serwera można używać na komputerach z dwoma procesorami. Odzyskiwanie pamięci serwera powinno być najszybszą opcją dla więcej niż dwóch procesorów. Najczęściej systemy serwerów wieloprocesorowych wyłączają GC serwera i używają stacji roboczej GC zamiast tego, gdy wiele wystąpień aplikacji serwera działa na tej samej maszynie.

Tego elementu można używać tylko w pliku konfiguracji aplikacji; Jest on ignorowany, jeśli znajduje się w pliku konfiguracji maszyny.

Uwaga

W .NET Framework 4 i starszych wersjach współbieżne odzyskiwanie pamięci nie jest dostępne po włączeniu odzyskiwania pamięci serwera. Począwszy od .NET Framework 4.5, odzyskiwanie pamięci serwera jest współbieżne. Aby użyć niebieżnego odzyskiwania pamięci serwera, ustaw gcServer element na true i gcConcurrent elementu na false.

Począwszy od .NET Framework 4.6.2, można również użyć następujących elementów do skonfigurowania GC serwera:

  • GCNoAffinitize, który określa, czy istnieje koligacja między stertami GC serwera i procesorami. Domyślnie dla każdego procesora istnieje jeden stert GC serwera.

  • GCHeapCount, który ogranicza liczbę stertów używanych przez proces.

  • GCHeapAffinitizeMask, który definiuje koligację między dostępnymi stertami GC serwera i poszczególnymi procesorami.

Przykład

Poniższy przykład umożliwia odzyskiwanie pamięci serwera:

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

Zobacz też