.NET C# Stopwatch用法
2010-04-21 17:22
579 查看
一般我们想要测试使用那种方法或着那种类型效率更高,使用Stopwatch类进行测试就可以,我也是现在才知道,汗一个。
先来看个小示例,如下。
前提,先引用using System.Diagnostics;命名空间。
1 //实例化一个sw
2 Stopwatch sw = new Stopwatch();
3 //开始计数
4 sw.Start();
5
6 //实例化一个sb
7 StringBuilder sb = new StringBuilder();
8
9 //循环
for (int i = 0; i < 10000; i++)
{
//追加
sb.Append(i);
}
//输出所用时间 毫秒
Console.WriteLine(sw.ElapsedMilliseconds);
//重置为0
sw.Reset();
//开始计数
sw.Start();
//字义一个 s字符串
string s = "";
//循环
for (int i = 0; i < 10000; i++)
{
s = s + i;
}
//输出所用时间 毫秒
Console.WriteLine(sw.ElapsedMilliseconds);
//重置为0
sw.Reset();
//开始计数
sw.Start();
//字义一个 b字符串
string b = "";
//循环
for (int i = 0; i < 10000; i++)
{
b += i;
}
//输出所用时间 毫秒
Console.WriteLine(sw.ElapsedMilliseconds);
Console.ReadLine();
下面在介绍几个属性。
Elapsed:返回一个TimeSpan对象,表示计时时间间隔;
ElapsedMilliseconds:返回计时经过的微秒数,精确度稍差,适合于稍长一点的计时;
ElapsedTicks: 返回计时经过的计时器刻度(timer tick)数。计时器刻度是Stopwatch对象可能的最小量度单位。计时器刻度时间的长度由特定的计算机和操作系统确定。Stopwatch对象的 Frequency静态字段的值表示一秒所包含的计时器刻度数。注意它与TimeSpan的Ticks属性所用的时间单位的区别。
应当根据计时任务的情况选择其中的一个属性。在我们的示例程序中,Elapsed属性提供了需要的精确度,用它来输出经过的微秒数。这也是TimeSpan的最高精确度了。
使用IsRunning属性可以查看一个Stopwatch实例是否正在计时,使用StartNew方法可以开始一个新的计时器。
先来看个小示例,如下。
前提,先引用using System.Diagnostics;命名空间。
1 //实例化一个sw
2 Stopwatch sw = new Stopwatch();
3 //开始计数
4 sw.Start();
5
6 //实例化一个sb
7 StringBuilder sb = new StringBuilder();
8
9 //循环
for (int i = 0; i < 10000; i++)
{
//追加
sb.Append(i);
}
//输出所用时间 毫秒
Console.WriteLine(sw.ElapsedMilliseconds);
//重置为0
sw.Reset();
//开始计数
sw.Start();
//字义一个 s字符串
string s = "";
//循环
for (int i = 0; i < 10000; i++)
{
s = s + i;
}
//输出所用时间 毫秒
Console.WriteLine(sw.ElapsedMilliseconds);
//重置为0
sw.Reset();
//开始计数
sw.Start();
//字义一个 b字符串
string b = "";
//循环
for (int i = 0; i < 10000; i++)
{
b += i;
}
//输出所用时间 毫秒
Console.WriteLine(sw.ElapsedMilliseconds);
Console.ReadLine();
下面在介绍几个属性。
Elapsed:返回一个TimeSpan对象,表示计时时间间隔;
ElapsedMilliseconds:返回计时经过的微秒数,精确度稍差,适合于稍长一点的计时;
ElapsedTicks: 返回计时经过的计时器刻度(timer tick)数。计时器刻度是Stopwatch对象可能的最小量度单位。计时器刻度时间的长度由特定的计算机和操作系统确定。Stopwatch对象的 Frequency静态字段的值表示一秒所包含的计时器刻度数。注意它与TimeSpan的Ticks属性所用的时间单位的区别。
应当根据计时任务的情况选择其中的一个属性。在我们的示例程序中,Elapsed属性提供了需要的精确度,用它来输出经过的微秒数。这也是TimeSpan的最高精确度了。
使用IsRunning属性可以查看一个Stopwatch实例是否正在计时,使用StartNew方法可以开始一个新的计时器。
相关文章推荐
- .NET C# Stopwatch用法
- c# ado.net DataSet用法
- .NET(c#)new关键字的三种用法
- C# Eval在asp.net中的用法及作用
- asp.net(c#) static关键字用法小结
- .NET(c#)new关键字的三种用法
- c# enum用法 枚举用法 Asp.net ENUM用法
- C#.NET验证码智能识别学习笔记---02-C#.Net中Using关键字的用法
- C#.net ArrayList用法
- C# ASP.NET MVC HtmlHelper用法大全
- .NET/C#中 System.Text.Encoding 类的一个简单用法
- C# Eval在asp.net中的用法及作用
- .NET(c#)new关键字的三种用法
- .NET(c#)new关键字的三种用法
- .NET/C#中对对象集合进行查询的方法 以及相关的 Predicate<T> 及 Action<T> 的用法
- c#.net ArrayList的用法
- C#(.net)中的DllImport 用法
- c# enum用法 枚举用法 Asp.net ENUM用法
- C#(.net)中的DllImport 用法[转]
- NET(c#)new关键字的三种用法