开发过程过程中我们通常对特定代码片运行所花的时间很感兴趣。当然有一些标准程序和代码工具可以查看到它,但是有经验的Visual Basic 6.0开发者有更快的办法。仅仅捕捉开始时间(使用Now关键字)和终止时间(再次使用Now关键字),两种相减,就能知道结果了。
如果使用Visual Basic .NET编写,首先尝试的代码可能是这样的:
Dim StartTime As DateTime = Now
' {code to check for timing goes here}
Dim EndTime As DateTime = Now
Console.WriteLine((StartTime - EndTime).ToString) |
但是这段代码的最后一行有语法错误。错误消息是"日期类型没有定义'-'操作符".这意味着我们不能执行减法。日期数据类型不支持减法操作,那么我们怎么得到两次时间的差别呢?
答案就是使用TimeSpan类。它是用于保持时间段的。上面的代码看起来与。NET框架组件中的相似:
Dim StartTime As DateTime = Now
' {code to check for timing goes here}
Dim EndTime As DateTime = Now
Dim RunLength As System.TimeSpan
RunLength = EndTime.Subtract(StartTime)
Console.WriteLine(RunLength.ToString) |
计算使用的是类Date的Subtract方法。最后一行将输出时间的跨度,格式化成小时、分钟和秒(包括秒的小数位)。典型的输出是这样的:
00:00:10.4850768
该时间跨度是10秒半。尽管显示了7位小数,但是只能相信两位,但是已经足够了。
结论
.NET是一种有趣的技术……NET框架组件有超过8000个类!在如此庞大的内容中却很容易找到有用的功能。我希望上面的几个技巧在你的应用程序中能够用到。

