<gcConcurrent> 元素
指定 Common Language Runtime 是否會在個別的執行緒執行記憶體回收。
<configuration>
<runtime>
<gcConcurrent>
Syntax
<gcConcurrent
enabled="true|false"/>
屬性和元素
下列章節說明屬性、子元素和父元素。
屬性
屬性 | 描述 |
---|---|
enabled |
必要屬性。 指定執行階段是否同時執行記憶體回收。 |
啟用的屬性
值 | 描述 |
---|---|
false |
連線介面不會同時執行記憶體回收。 |
true |
同時執行記憶體回收。 此為預設值。 |
子元素
無。
父元素
元素 | Description |
---|---|
configuration |
通用語言執行平台和 .NET Framework 應用程式所使用之每個組態檔中的根項目。 |
runtime |
包含有關組件繫結和記憶體回收的資訊。 |
備註
在.NET Framework 4 之前,工作站垃圾收集支援並行垃圾收集,在個別執行緒的背景中執行垃圾收集。 在 .NET Framework 4 中,並行垃圾收集已由背景 GC 取代,也會在不同的執行緒上于背景執行垃圾收集。 從 .NET Framework 4.5 開始,背景收集就可在伺服器垃圾收集中使用。 gcConcurrent 元素可控制執行階段是否執行並行或背景記憶體回收 (如果有的話),或是否在前景執行記憶體回收。
停用背景記憶體回收
警告
從 .NET Framework 4 開始,並行垃圾收集會由背景垃圾收集取代。 .NET Framework檔中會交替使用並行和背景詞彙。 若要停用背景記憶體回收,請使用 gcConcurrent 元素,如本文所述。
依預設,執行階段會使用並行或背景記憶體回收,這已針對延遲進行最佳化。 如果您的應用程式與使用者互動程度極高,則請讓並行記憶體回收維持啟用狀態,藉此最小化應用程式為了執行記憶體回收而暫停的時間。 如果您將 gcConcurrent 元素的 enabled
屬性設為 false
,執行階段就會使用針對輸送量最佳化的非並行記憶體回收。
下列組態檔會停用背景記憶體回收:
<configuration>
<runtime>
<gcConcurrent enabled="false"/>
</runtime>
</configuration>
如果電腦群組態檔中有gcConcurrentSetting設定,它會定義所有.NET Framework應用程式的預設值。 電腦組態檔設定會覆寫應用程式組態檔設定。
如需並行和背景記憶體回收的詳細資訊,請參閱背景記憶體回收。
範例
下列範例會啟用背景記憶體回收:
<configuration>
<runtime>
<gcConcurrent enabled="true"/>
</runtime>
</configuration>