Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Menentukan jumlah tumpukan/utas yang akan digunakan untuk pengumpulan sampah server.
<Konfigurasi>
<Runtime>
<GCHeapCount>
Syntax
<GCHeapCount
enabled="nn"/>
Atribut dan elemen
Bagian berikut menjelaskan atribut, elemen turunan, dan elemen induk.
Attributes
| Attribute | Description |
|---|---|
enabled |
Atribut yang diperlukan. Menentukan jumlah tumpukan yang akan digunakan untuk pengumpulan sampah server. Jumlah timbunan aktual adalah minimum dari jumlah timbunan yang Anda tentukan dan jumlah prosesor yang diizinkan untuk digunakan. |
atribut yang diaktifkan
| Nilai | Description |
|---|---|
nn |
Jumlah timbunan yang digunakan untuk server GC. |
Elemen turunan
Tidak ada.
Elemen induk
| Elemen | Description |
|---|---|
configuration |
Elemen akar di setiap file konfigurasi yang digunakan oleh runtime dan aplikasi .NET Framework. |
runtime |
Berisi informasi tentang pengikatan perakitan dan pengumpulan sampah. |
Komentar
Secara default, utas GC server di-hard-afinitisasi dengan CPU masing-masing sehingga ada satu tumpukan GC, satu utas GC server, dan satu utas GC server latar belakang untuk setiap prosesor. Dimulai dengan .NET Framework 4.6.2, Anda dapat menggunakan GCHeapCount elemen untuk membatasi jumlah timbunan yang digunakan oleh aplikasi Anda untuk server GC. Membatasi jumlah timbunan yang digunakan untuk server GC sangat berguna untuk sistem yang menjalankan beberapa instans aplikasi server.
GCHeapCount biasanya digunakan bersama dengan dua bendera lainnya:
GCNoAffinitize, yang mengontrol apakah utas/tumpukan GC server difinisikan dengan CPU.
GCHeapAffinitizeMask, yang mengontrol afinitas utas/timbunan GC dengan CPU.
Jika GCHeapCount diatur dan GCNoAffinitize dinonaktifkan (pengaturan defaultnya), ada afinitas antara utas/timbunan GC nn dan prosesor nn pertama. Anda dapat menggunakan GCHeapAffinitizeMask elemen untuk menentukan prosesor mana yang digunakan oleh tumpukan GC server proses. Jika tidak, jika beberapa proses server berjalan pada sistem, penggunaan prosesor mereka akan tumpang tindih.
Jika GCHeapCount diatur dan GCNoAffinitize diaktifkan, pengumpul sampah membatasi jumlah prosesor yang digunakan untuk server GC tetapi tidak mendefinisikan tumpukan dan prosesor GC.
Example
Contoh berikut menunjukkan bahwa aplikasi menggunakan server GC dengan 10 heap/utas. Karena Anda tidak ingin tumpukan tersebut tumpang tindih dengan timbunan dari aplikasi lain yang berjalan pada sistem, Anda menggunakan GCHeapAffinitizeMask untuk menentukan bahwa proses harus menggunakan CPU 0 hingga 9.
<configuration>
<runtime>
<gcServer enabled="true"/>
<GCHeapCount enabled="10"/>
<GCHeapAffinitizeMask enabled="1023"/>
</runtime>
</configuration>
Contoh berikut tidak mendefinisikan utas GC server dan membatasi jumlah tumpukan/utas GC hingga 10.
<configuration>
<runtime>
<gcServer enabled="true"/>
<GCHeapCount enabled="10"/>
<GCNoAffinitize enabled="true"/>
</runtime>
</configuration>