指定通用語言執行時是否在獨立執行緒執行垃圾回收。
語法
<gcConcurrent
enabled="true|false"/>
屬性和元素
下列章節說明屬性、子元素和父元素。
Attributes
| Attribute | Description |
|---|---|
enabled |
必要屬性。 指定執行時是否同時執行垃圾回收。 |
啟用屬性
| 價值觀 | Description |
|---|---|
false |
它不會同時執行垃圾回收。 |
true |
同時執行垃圾回收。 這是預設值。 |
子專案
沒有。
父元素
| 元素 | Description |
|---|---|
configuration |
通用語言執行平台和 .NET Framework 應用程式所使用之每個組態檔中的根項目。 |
runtime |
包含關於組裝裝訂與垃圾回收的資訊。 |
備註
在 .NET Framework 4 之前,工作站垃圾回收支援並行垃圾回收,該機制會在背景獨立執行緒執行垃圾回收。 在 .NET Framework 4 中,並行垃圾回收被背景 GC 取代,GC 也會在獨立執行緒的背景執行垃圾回收。 從 .NET Framework 4.5 開始,背景收集開始以伺服器垃圾回收形式提供。 該 gcConcurrent 元素控制執行時是否執行並行或背景垃圾回收(若有此選項),或是在前景執行垃圾回收。
要停用背景垃圾回收
警告
從 .NET Framework 4 開始,並行垃圾回收被背景垃圾回收取代。 在 .NET Framework 文件中,並 行 與 背景 這兩個術語可互換使用。 要停用背景垃圾回收,請使用本文討論的元素 gcConcurrent 。
預設情況下,執行時會使用並行或背景垃圾回收,並針對延遲進行最佳化。 如果您的應用程式涉及大量使用者互動,請開啟並行垃圾回收,以減少應用程式暫停執行垃圾回收的時間。 如果你將元素屬性設enabledgcConcurrent為 false,執行時會使用非並行垃圾回收,這種垃圾回收是為了吞吐量而優化的。
以下設定檔可停用背景垃圾回收:
<configuration>
<runtime>
<gcConcurrent enabled="false"/>
</runtime>
</configuration>
如果 gcConcurrentSetting 機器設定檔中有設定,它會定義所有 .NET Framework 應用程式的預設值。 機器設定檔會覆蓋應用程式設定檔設定。
欲了解更多關於並行與背景垃圾回收的資訊,請參見 背景垃圾回收。
Example
以下範例可實現背景垃圾回收:
<configuration>
<runtime>
<gcConcurrent enabled="true"/>
</runtime>
</configuration>