HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/TDijk1/erp-apps.eu/wwwroot/CMSPages/MemoryTest.aspx.cs
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class MemoryTest : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        litAlocatedMemory.Text = GetSizeString(GC.GetTotalMemory(false),FileSizeUnitsEnum.Automatic).ToString();
        litPeakMemory.Text = GetSizeString(Process.GetCurrentProcess().PeakWorkingSet64, FileSizeUnitsEnum.Automatic).ToString();
        litPhysicalMemory.Text = GetSizeString(Process.GetCurrentProcess().WorkingSet64, FileSizeUnitsEnum.Automatic).ToString();
        litVirtualMemory.Text = GetSizeString(Process.GetCurrentProcess().VirtualMemorySize64, FileSizeUnitsEnum.Automatic).ToString();
    }

    public enum FileSizeUnitsEnum
    {
        /// <summary>
        /// Bytes.
        /// </summary>
        B,
        /// <summary>
        /// Kilobytes.
        /// </summary>
        kB,
        /// <summary>
        /// Megabytes.
        /// </summary>
        MB,
        /// <summary>
        /// Gigabytes.
        /// </summary>
        GB,
        /// <summary>
        /// Automatic units changing.
        /// </summary>
        Automatic
    }

    public static string GetSizeString(long size, FileSizeUnitsEnum unit)
    {
        double num = (double)size;
        if (unit == FileSizeUnitsEnum.Automatic)
        {
            if (size >= (long)1073741824)
            {
                unit = FileSizeUnitsEnum.GB;
            }
            else if (size >= (long)1048576)
            {
                unit = FileSizeUnitsEnum.MB;
            }
            else if (size >= (long)1024)
            {
                unit = FileSizeUnitsEnum.kB;
            }
        }
        switch (unit)
        {
            case FileSizeUnitsEnum.kB:
                {
                    num = num / 1024;
                    if (num < 20)
                    {
                        return string.Concat(num.ToString("#.#"), " kB");
                    }
                    double num1 = Math.Round(num, MidpointRounding.AwayFromZero);
                    return string.Concat(num1.ToString("#"), " kB");
                }
            case FileSizeUnitsEnum.MB:
                {
                    num = num / 1048576;
                    if (num < 20)
                    {
                        return string.Concat(num.ToString("#.#"), " MB");
                    }
                    double num2 = Math.Round(num, MidpointRounding.AwayFromZero);
                    return string.Concat(num2.ToString("#"), " MB");
                }
            case FileSizeUnitsEnum.GB:
                {
                    num = num / 1073741824;
                    if (num < 20)
                    {
                        return string.Concat(num.ToString("#.#"), " GB");
                    }
                    double num3 = Math.Round(num, MidpointRounding.AwayFromZero);
                    return string.Concat(num3.ToString("#"), " GB");
                }
        }
        return string.Concat(num, " B");
    }
}