计算程序执行时间的函数

用的别人的,最后执行的写入的文本貌似有些问题,回头看看原因

using System;
using System.Diagnostics;
using System.IO;

//using System.Text.Encoding;
using System.Text;

public class Timing
{
    private TimeSpan duration;

    public Timing()
    {
        duration = new TimeSpan(0);
    }

    public void stopTime()
    {
        duration = Process.GetCurrentProcess().TotalProcessorTime;
    }

    public void startTime()
    {
        GC.Collect();
        GC.WaitForPendingFinalizers();
    }

    public TimeSpan Result()
    {
        return duration;
    }
}

namespace ConsoleApplication5
{
    internal class Program
    {
        private static void Main(string[] args)
        {
            int[] nums = new int[100000];
            BuildArray(nums);
            Timing tObj = new Timing();
            tObj.startTime();
            Write(nums.ToString());

            //DisplayNums(nums);
            tObj.stopTime();
            Console.WriteLine("time (.NET): " + tObj.Result().TotalSeconds);
        }

        private static void BuildArray(int[] arr)
        {
            for (int i = 0; i < 100000; i++)
                arr[i] = i;
        }

        private static void DisplayNums(int[] arr)
        {
            for (int i = 0; i <= arr.GetUpperBound(0); i++)
                Console.Write(arr[i] + " ");
        }

        private static void Write(string text)
        {
            FileStream fs = new FileStream("A.txt", FileMode.Append);
            StreamWriter sw = new StreamWriter(fs, Encoding.Default);
            foreach (char test in text)
                sw.Write(test);
            sw.Close();
            fs.Close();
        }
    }
}

  

posted @ 2016-12-30 13:19  qiangges2017  阅读(476)  评论(0编辑  收藏  举报