יום שלישי, 3 במאי 2016

קונסול בחלון נפרד עבור תוכנת סי-שארפ

כיצד ליצור קונסול בחלון נפרד עבור תוכנת סי-שארפ 
הקוד מצורף להלן מדרג את ביצועי המחשב:

public partial class Form1 : Form
{
    // console - Allows the command line to be seen during normal execuation
    [DllImport("kernel32.dll", SetLastError = true)]
    [returnMarshalAsAttribute(UnmanagedType.Bool)]
    static extern bool AllocConsole();

    Thread trd;
    public Form1()
    {
        InitializeComponent();
        AllocConsole();
        trd = new Thread(new ThreadStart(render));
        trd.Start();
    }

    private void Form1_FormClosing(object sender, FormClosingEventArgs e)
    {
        trd.Abort();
    }

    private void render()
    {
        int framesRendered = 0;
        long startTime = Environment.TickCount;

        while (true)
        {
            //Benchmarking
            framesRendered++;
            if (Environment.TickCount > startTime + 1000)
            {
                Console.WriteLine("Snir's Computer Benchmarking: " + framesRendered + " fps");
                framesRendered = 0;
                startTime = Environment.TickCount;
            }
        }
    }
}