如何在Mono下获得可用的虚拟和物理内存大小?

use*_*528 6 .net clr mono

在Mono下运行时,有没有办法获得可用的虚拟和物理内存大小?

Dyl*_*eau 0

我没有使用太多 Mono,但是你尝试过查看Mono Profiler日志吗?我知道它们显示物理内存,但我不确定虚拟内存......

请说我好奇,但你为什么需要这些?如果您的应用程序中存在内存使用问题,您可以使用多种不同的技术来帮助减少内存使用问题...

编辑:环顾四周,确实没有一种特定的方式来收集它...但是,根据您运行应用程序的方式,您仍然可以在 C# 中访问当前进程对象

Process currentProcess = System.Diagnostics.Process.GetCurrentProcess();
var physicalMemory = currentProcess.WorkingSet64;
var virtualMemory = currentProcess.PeakVirtualMemorySize64;
Run Code Online (Sandbox Code Playgroud)

然后只需使用/返回您认为合适的即可。

来源:MSDN