如何检索你自己的C#WinForms应用程序中使用的内存量

本文概述

  • 1.导入System.Diagnostics
  • 2.获取专用内存量
应用程序的性能保证了它将在大多数最终用户计算机上使用而不会带来麻烦。你将需要在每个可能占用大量内存的重要应用程序上不断监视应用程序的当前内存使用情况。这将允许你修改应用程序的代码, 以便随着其RAM需求的增加进行优化, 从而避免了C#中致命的OutOfMemoryException异常。
有一种非常简单的方法来获取应用程序的内存使用量, 而无需依赖外部库或依赖项, 而仅依赖于.NET Framework本身, 我将向你说明如何轻松地在应用程序内部获取此值。
1.导入System.Diagnostics为了获得你的应用程序使用的当前内存, 我们将依赖于.NET的System.Diagnostics命名空间中的Process类。你可以使用以下行轻松将其导入到班级顶部:
using System.Diagnostics;

然后, Process类将在代码中可用。
2.获取专用内存量现在, 从导入的名称空间中, 调用Process类的静态GetCurrentProcess方法, 并将其值存储在Process类型的变量中。获得的流程实例将具有PrivateMemorySize64 long属性, 该属性表示为关联的流程分配的私有内存量(以字节为单位):
// 1. Obtain the current application processProcess currentProcess = Process.GetCurrentProcess(); // 2. Obtain the used memory by the processlong usedMemory = currentProcess.PrivateMemorySize64; // 3. Display value in the terminal outputConsole.WriteLine(usedMemory);

【如何检索你自己的C#WinForms应用程序中使用的内存量】例如, 连续运行所描述的代码将在终端中打印该值, 并将连续增加已使用的内存值(大约18/19 MB):
186327041869824018763776188293121896038419025920

该属性可以与32位或64位操作系统和处理器一起使用。
编码愉快!

    推荐阅读