zoukankan      html  css  js  c++  java
  • 封装的小类:统计程序上个阶段运行的时间长度和运行的总时长

    调用:

      TimeUseHelper th = new TimeUseHelper();//产生开始时间
    
      #region 第一个阶段的代码
      #endregion
      th.TimePeriodAndAll();
    
      #region 第二个阶段的代码
      #endregion
      th.TimePeriodAndAll();

    定义:

        /// <summary>
        /// 用于输出程序执行阶段所花费的时间长度
        /// </summary>
        public class TimeUseHelper
        {
            /// <summary>
            /// 开始时间
            /// </summary>
            public DateTime startTime { get; set; }
            /// <summary>
            /// 上一个结束时间(用于计算上个阶段一共耗费了多长时间)
            /// </summary>
            public DateTime lastTime { get; set; }
    
            /// <summary>
            /// 初始化,记录开始时间
            /// </summary>
            public TimeUseHelper()
            {
                startTime = DateTime.Now;
                lastTime = DateTime.Now;
            }
    
            /// <summary>
            /// 返回上一阶段耗费的时间
            /// </summary>
            public void TimePeriod()
            {
                DateTime now = DateTime.Now;
                if(now != lastTime)
                {
                    var timespan = now - lastTime;
                    lastTime = now;
                    Console.WriteLine($"  上个阶段耗时:{timespan.Minutes}分 {timespan.Seconds} 秒");
                }
            }
    
            /// <summary>
            /// 从开始到现在共耗费的时间
            /// </summary>
            public void TimeAll()
            {
                DateTime now = DateTime.Now;
                if (now != startTime)
                {
                    var timespan = now - startTime;
                    Console.WriteLine($"  共耗时:{timespan.Minutes}分 {timespan.Seconds} 秒");
                }
            }
    
            /// <summary>
            /// 上个阶段和总的时间
            /// </summary>
            public void TimePeriodAndAll()
            {
                DateTime now = DateTime.Now;
                var spon_period = now - lastTime;
                lastTime = now;
                var spon_all = now - startTime;
                if(spon_period.Hours == 0)
                {
                    Console.WriteLine($"  上个阶段耗时:{spon_period.Minutes}分 {spon_period.Seconds} 秒");
                }
                else
                {
                    Console.WriteLine($"  上个阶段耗时:{spon_period.Hours}小时 {spon_period.Minutes}分 {spon_period.Seconds} 秒");
                }
                
                if(spon_all.Hours == 0)
                {
                    Console.WriteLine($"  共耗时:{spon_all.Minutes}分 {spon_all.Seconds} 秒");
                }
                else
                {
                    Console.WriteLine($"  共耗时:{spon_all.Hours}小时 {spon_all.Minutes}分 {spon_all.Seconds} 秒");
                }
            }
        }
  • 相关阅读:
    网站测试相关内容
    渗透测试的内容
    性能测试涉及知识点
    nginx核心反向代理
    投票活动
    数据库的框架及优化之路
    sonarqube搭建遇到的问题
    robotframework+python3+selenium之下拉框的选择---第五集
    robotframework+python3+selenium之常用情景---第四集
    robotframework+python3+selenium之创建第一个项目---第三集
  • 原文地址:https://www.cnblogs.com/zhangchaoran/p/10381745.html
Copyright © 2011-2022 走看看