Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
элемент
Указывает количество куч или потоков, используемых для сборки мусора сервера.
<конфигурация>
<Среды выполнения>
<GCHeapCount>
Синтаксис
<GCHeapCount
enabled="nn"/>
Атрибуты и элементы
В следующих разделах описаны атрибуты, дочерние и родительские элементы.
Attributes
| Свойство | Description |
|---|---|
enabled |
Обязательный атрибут. Указывает количество куч, используемых для сборки мусора сервера. Фактическое количество кучи — это минимальное количество кучи, указанное и количество процессоров, которые можно использовать. |
атрибут включено
| Ценность | Description |
|---|---|
nn |
Количество кучи, используемых для серверной сборки GC. |
Дочерние элементы
Нет.
Родительские элементы
| Элемент | Description |
|---|---|
configuration |
Корневой элемент в любом файле конфигурации, используемом средой CLR и приложениями .NET Framework. |
runtime |
Содержит сведения о привязке сборки и сборке мусора. |
Замечания
По умолчанию потоки GC сервера жестко сопоставлены с соответствующим ЦП, чтобы для каждого процессора существовал один куча GC, один поток GC сервера и один поток фонового сервера GC для каждого процессора. Начиная с .NET Framework 4.6.2, можно использовать GCHeapCount элемент, чтобы ограничить количество куч, используемых приложением для серверной сборки GC. Ограничение количества кучи, используемых для серверной сборки GC, особенно полезно для систем, работающих с несколькими экземплярами серверного приложения.
GCHeapCount обычно используется вместе с двумя другими флагами:
GCNoAffinitize, который определяет, совпадают ли потоки или кучи сервера GC с ЦП.
GCHeapAffinitizeMask, который управляет сходством потоков и кучи GC с ЦП.
Если GCHeapCount задано и GCNoAffinitize отключено (его параметр по умолчанию), существует сходство между потоками или кучами nn и первым процессором nn . Элемент можно использовать GCHeapAffinitizeMask для указания процессоров, используемых кучами GC процесса. В противном случае, если несколько процессов сервера выполняются в системе, их использование процессора будет перекрываться.
Если GCHeapCount задано и GCNoAffinitize включено, сборщик мусора ограничивает количество процессоров, используемых для серверной сборки GC, но не аффинизируют кучи и процессоры GC.
Example
В следующем примере указывается, что приложение использует серверную сборку данных с 10 кучами и потоками. Так как вы не хотите, чтобы эти кучы перекрывались с кучами из других приложений, работающих в системе, используйте GCHeapAffinitizeMask этот процесс, чтобы указать, что процесс должен использовать ЦП 0 до 9.
<configuration>
<runtime>
<gcServer enabled="true"/>
<GCHeapCount enabled="10"/>
<GCHeapAffinitizeMask enabled="1023"/>
</runtime>
</configuration>
В следующем примере потоки GC сервера не аффинизируются и не ограничиваются числом куч или потоков GC до 10.
<configuration>
<runtime>
<gcServer enabled="true"/>
<GCHeapCount enabled="10"/>
<GCNoAffinitize enabled="true"/>
</runtime>
</configuration>