如何获得可用系统内存的大小?

是否有可能在C#.NET中获得系统可用内存的大小? 如果是的话如何?


使用Microsoft.VisualBasic.Devices.ComputerInfo.TotalPhysicalMemory

右键单击您的项目,添加引用,选择Microsoft.VisualBasic


这个答案是基于Hans Passant的。 实际需要的属性是AvailablePhysicalMemory。 它(和TotalPhysicalMemory等)是实例变量,所以它应该是

new ComputerInfo().AvailablePhysicalMemory

它用C#工作,但我想知道为什么这个页面说C#,“这种语言不支持或没有代码示例可用。”


来自EggHeadCafe之后搜索'c#系统内存'

您将需要添加对System.Management的引用

using System;
using System.Management;

namespace MemInfo
{
    class Program
    {       
        static void Main(string[] args)
        {
            ObjectQuery winQuery = new ObjectQuery("SELECT * FROM Win32_LogicalMemoryConfiguration");

            ManagementObjectSearcher searcher = new ManagementObjectSearcher(winQuery);

            foreach (ManagementObject item in searcher.Get())
            {
                Console.WriteLine("Total Space = " + item["TotalPageFileSpace"]);
                Console.WriteLine("Total Physical Memory = " + item["TotalPhysicalMemory"]);
                Console.WriteLine("Total Virtual Memory = " + item["TotalVirtualMemory"]);
                Console.WriteLine("Available Virtual Memory = " + item["AvailableVirtualMemory"]);
            }
            Console.Read();
        }
    }
}

输出:

总空间= 4033036

总物理内存= 2095172

总虚拟内存= 1933904

可用虚拟内存= 116280

链接地址: http://www.djcxy.com/p/79809.html

上一篇: How to get the size of available system memory?

下一篇: C++ large array of vectors