HTML5技术

.NET获取枚举DescriptionAttribute描述信息性能改进的多种方法 - /*梦里花落知多少*/(5)

字号+ 作者:H5之家 来源:H5之家 2016-01-15 08:14 我要评论( )

TestHelper{ 执行一个方法并返回执行时间间隔 TimeSpan InvokeAndGetTimeSpan(Action call){Stopwatch sw = new Stopwatch();sw.Start();call();sw.Stop(); return sw.Elapsed;} 执行一个方法并Console输出实际执行

TestHelper { 执行一个方法并返回执行时间间隔 TimeSpan InvokeAndGetTimeSpan(Action call) { Stopwatch sw = new Stopwatch(); sw.Start(); call(); sw.Stop(); return sw.Elapsed; } 执行一个方法并Console输出实际执行间隔(豪秒) /// </summary> [Conditional()] InvokeAndWriteTimeSpan(Action call) { Console.WriteLine(, InvokeAndGetTimeSpan(call).TotalMilliseconds); } 执行一个方法并返回托管内存使用大小(可能内存回收会导致不准确) InvokeAndGetMemoryUsed(Action call) { var start = GC.GetTotalMemory(false); call(); return GC.GetTotalMemory(false) - start; } 执行一个方法并Console输出托管内存使用大小(字节) /// </summary> [Conditional()] InvokeAndWriteMemoryUsed(Action call) { Console.WriteLine(, InvokeAndGetMemoryUsed(call) / 1024F); } 执行一个方法并Console输出:实际执行间隔(豪秒);托管内存使用大小(可能内存回收会导致不准确) /// </summary> [Conditional()] InvokeAndWriteAll(Action call) { Stopwatch sw = new Stopwatch(); sw.Start(); var start = GC.GetTotalMemory(false); call(); var end = GC.GetTotalMemory(false); sw.Stop(); Console.WriteLine(, sw.ElapsedMilliseconds); Console.WriteLine(, (end - start) / 1024F); Console.WriteLine(, GC.CollectionCount(0)); } }

View Code

 

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • Dora.Interception: 一个为.NET Core度身定制的AOP框架 - Artech

    Dora.Interception: 一个为.NET Core度身定制的AOP框架 - Artech

    2017-05-02 11:00

  • 如何在 ASP.NET Core 中发送邮件 - Savorboard

    如何在 ASP.NET Core 中发送邮件 - Savorboard

    2017-05-02 08:02

  • 十二个 ASP.NET Core 例子 - Savorboard

    十二个 ASP.NET Core 例子 - Savorboard

    2017-04-27 16:01

  • ASP.NET MVC5请求管道和生命周期 - 雪飞鸿

    ASP.NET MVC5请求管道和生命周期 - 雪飞鸿

    2017-04-24 08:04

网友点评
h