当公共语言运行时(CLR)在创建内部使用的某些线程时指定显式堆栈大小,而不是使用这些线程的默认堆栈大小来减少内存使用的请求。
<配置>
<运行时>
<UseSmallInternalThreadStacks>
Syntax
<UseSmallInternalThreadStacks enabled="true|false" />
特性和元素
下列各节描述了特性、子元素和父元素。
特性
| Attribute | Description |
|---|---|
| enabled | 必需属性。 指定当 CLR 在创建内部使用的某些线程时,是否请求 CLR 使用显式堆栈大小而不是默认堆栈大小。 显式堆栈大小小于默认堆栈大小 1 MB。 |
enabled Attribute
| 价值 | Description |
|---|---|
| 是 | 请求显式堆栈大小。 |
| 假 | 使用默认堆栈大小。 这是 .NET Framework 4 的默认值。 |
子元素
没有。
父元素
| 元素 | Description |
|---|---|
configuration |
公共语言运行时和 .NET Framework 应用程序所使用的每个配置文件中的根元素。 |
runtime |
包含有关程序集绑定和垃圾回收的信息。 |
注解
此配置元素用于请求在进程中减少的虚拟内存使用,因为 CLR 对其内部线程使用的显式线程大小(如果遵循请求)小于默认大小。
重要
此配置元素是对 CLR 的请求,而不是绝对要求。 在 .NET Framework 4 中,请求仅适用于 x86 体系结构。 在 CLR 的未来版本中,可能会完全忽略此元素,或者替换为始终用于所选内部线程的显式堆栈大小。
如果 CLR 遵循请求,则指定此配置元素可权衡较小的虚拟内存使用可靠性,因为较小的堆栈大小可能会使堆栈溢出的可能性更大。
Example
以下示例演示如何请求 CLR 对它在内部使用的某些线程使用显式堆栈大小。
<configuration>
<runtime>
<UseSmallInternalThreadStacks enabled="true" />
</runtime>
</configuration>