<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>

另請參閱