Lập trình C# – Lấy dung lượng bộ nhớ RAM mà chương trình đã sử dụng

Rate this post

Để lấy thông tin bộ nhớ RAM mà chương trình đã sử dụng, ta làm như đoạn code bên dưới:

Process process = Process.GetCurrentProcess();
long memory = process.PrivateMemorySize64;

Thuộc tính PrivateMemorySize64 sẽ trả về kiểu long, nó là giá trị bộ nhớ RAM mà chương trình đã sử dụng ( tính bằng byte )

Xây dựng class lấy thông tin RAM đã sử dụng và chuyển đổi giá trị theo các đơn vị tính khác nhau
public class SysInfo
    {
        public enum MemorySizeInfo { Byte, KB, MB, GB };

        public double GetMemoryUsed(MemorySizeInfo memorySizeInfo = MemorySizeInfo.MB)
        {
            Process process = Process.GetCurrentProcess();
            long memory = process.PrivateMemorySize64;
            process.Dispose();
            process = null;
            if (memorySizeInfo == MemorySizeInfo.Byte)
                return memory;
            else if (memorySizeInfo == MemorySizeInfo.KB)
                return memory / (double)1024;
            else if (memorySizeInfo == MemorySizeInfo.MB)
                return memory / (double)(1024 * 1024);
            else
                return memory / (double)(1024 * 1024 * 1024);
        }
    }

Ví dụ cách sử dụng:

class Program
    {
        static void Main(string[] args)
        {
            Console.OutputEncoding = Encoding.UTF8;
            Console.WriteLine(
                "Bộ nhớ RAM mà chương trình này đã sử dụng:" +
                $" {new SysInfo().GetMemoryUsed(SysInfo.MemorySizeInfo.MB)} MB"
            );
            Console.ReadKey();
        }
    }

Kết quả sẽ hiện thị như hình bên dưới:

Cảm ơn các bạn đã xem bài viết, hãy để lại bình luận góp ý cho mình nhé!

Hits: 17

Leave a Reply