.NET Core 3.0 引入了一个新特性 Hard Limit for the GC Heap ,默认值是 75% ,想修改这个设置,请问如何修改?
在 github issue 的回复中知道了答案 —— 设置环境变量 COMPlus_GCHeapHardLimit
或者 COMPlus_GCHeapHardLimitPercent
,比如设置为2G内存,在 docker compose 配置文件中添加如下的设置:
environment:
- COMPlus_GCHeapHardLimit=80000000
注:上面的数值是16进制
下一次发布的版本应该可以通过 *.runtimeconfig.json
来设置,大概类似于下面这样:
{
"runtimeOptions": {
...
"configProperties": {
"System.GC.HeapHardLimit": 5
}
}
}
dotnet/coreclr 中相关 PR
:System.GC.HeapHardLimit and .HeapHardLimitPercent in runtimeconfig.json