Specifies whether the common language runtime runs server garbage collection.
The following sections describe attributes, child elements, and parent elements.
Specifies whether the runtime runs server garbage collection.
|Does not run server garbage collection. This is the default.|
|Runs server garbage collection.|
|The root element in every configuration file used by the common language runtime and .NET Framework applications.|
|Contains information about assembly binding and garbage collection.|
The common language runtime (CLR) supports two types of garbage collection: workstation garbage collection, which is available on all systems, and server garbage collection, which is available on multiprocessor systems. You use the
<gcServer> element to control the type of garbage collection the CLR performs. Use the GCSettings.IsServerGC property to determine if server garbage collection is enabled.
For single-processor computers, the default workstation garbage collection should be the fastest option. Either workstation or server can be used for two-processor computers. Server garbage collection should be the fastest option for more than two processors.
This element can be used only in the application configuration file; it is ignored if it is in the machine configuration file.
In the .NET Framework 4 and earlier versions, concurrent garbage collection is not available when server garbage collection is enabled. Starting with the .NET Framework 4.5, server garbage collection is concurrent. To use non-concurrent server garbage collection, set the
The following example enables server garbage collection.
<configuration> <runtime> <gcServer enabled="true"/> </runtime> </configuration>