问题描述
我需要为 Mono 使用的内存设置一个上限.
I need to set an upper bound to the memory used by Mono.
根据 blogs 可以使用参数 max-heap-size
来限制内存使用量.根据实验,根据代码,它确实做到了我想要的.
According to blogs it's possible to use the parameter max-heap-size
to cap the memory usage.
According to experimentations, and according to the code, it indeed does what I want.
但是,此选项没有记录.
因此:在生产中依赖此选项是否安全(或者它是否有我看不到的缺点,例如:不能保证在未来的 Mono 版本中仍然可用)?
Therefore: is it safe to rely on this option in production (or does it have drawbacks I don't see, like e.g.: no guarantee to still be available in future version of Mono)?
推荐答案
有文档,获取文档的方法如下: export
an invalid MONO_GC_PARAMS
, start单声道
:
It is documented, and here's one way to get the documentation: export
an invalid MONO_GC_PARAMS
, start mono
:
export MONO_GC_PARAMS=xxx
mono sample.exe
并获得帮助:
Warning: In environment variable `MONO_GC_PARAMS': Unknown option `xxx`. - Ignoring.
MONO_GC_PARAMS must be a comma-delimited list of one or more of the following:
max-heap-size=N (where N is an integer, possibly with a k, m or a g suffix)
soft-heap-limit=n (where N is an integer, possibly with a k, m or a g suffix)
nursery-size=N (where N is an integer, possibly with a k, m or a g suffix)
major=COLLECTOR (where COLLECTOR is `marksweep', `marksweep-conc', `marksweep-par', 'marksweep-fixed' or 'marksweep-fixed-par')
minor=COLLECTOR (where COLLECTOR is `simple' or `split')
wbarrier=WBARRIER (where WBARRIER is `remset' or `cardtable')
stack-mark=MARK-METHOD (where MARK-METHOD is 'precise' or 'conservative')
[no-]cementing
evacuation-threshold=P (where P is a percentage, an integer in 0-100)
(no-)lazy-sweep
Experimental options:
save-target-ratio=R (where R must be between 0.10 - 2.00).
default-allowance-ratio=R (where R must be between 1.00 - 10.00).
如您所见,列出了 max-heap-size
,而不是在 Experimental Options
中.所以我会说它是安全的.
As you can see max-heap-size
is listed, and not in the Experimental Options
. So I'd say it's safe.
这篇关于Mono GC max-heap-size 没有记录.在生产中使用是否安全?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!