Call the API to view system memory usage

xiaoxiao2021-03-06  65

Using system; using system.runtime.interopservices;

/ * Typedef struct _MEMORYSTATUS {DWORD dwLength; DWORD dwMemoryLoad; DWORD dwTotalPhys; DWORD dwAvailPhys; DWORD dwTotalPageFile; DWORD dwAvailPageFile; DWORD dwTotalVirtual; DWORD dwAvailVirtual;} MEMORYSTATUS; * /

[StructLayout (LayoutKind.Sequential)] public class MemoryStatus {public int Length; public int MemoryLoad; public int TotalPhys; public int AvailPhys; public int TotalPageFile; public int AvailPageFile; public int TotalVirtual; public int AvailVirtual;}

Public class libwrap {[DLLIMPORT ("kernel32", entrypoint = "globalmemorystatus")] public static extern void getMemoryStatus ([in, out] memorystatus omemorystatus);}

Public class app {public static void main () {membratestatus omemorystatus = new memorystatus ();

Libwrap.getMemoryStatus (OMORYSTATUS);

Console.Writeline ("Length: {0}", OMORYSTATUS.LENGTH); Console.Writeline ("MemoryLoad: {0}", OMORYSTATUS.MEMORYLOAD; console.writeline ("Totalphys: {0}", OMORYSTATUS.TOTALPHYS) ; Console.WriteLine ( "AvailPhys: {0}", oMemoryStatus.AvailPhys); Console.WriteLine ( "TotalPageFile: {0}", oMemoryStatus.TotalPageFile); Console.WriteLine ( "AvailPageFile: {0}", oMemoryStatus.AvailPageFile Console.writeline ("Totalvirtual: {0}", OMEMORYSTATUS.TOTALTUAL); Console.Writeline ("Availvirtual: {0}", OMORYSTATUS.AVAILVIRTUAL);}}

转载请注明原文地址:https://www.9cbs.com/read-89781.html

New Post(0)