VB.NET程序运行耗时精确计量方法之一

Imports System.Threading
'精确计量程序运行时间的STOPWATCH
Module Module1
    Sub Main1()
        ' Create new Stopwatch instance.
        Dim watch As New Diagnostics.Stopwatch
        watch.Start()     '启动

        ' Measure.
        For i As Integer = 0 To 1000 - 1
            Threading.Thread.Sleep(1)
        Next

        ' 停止并显示时间
        watch.Stop()
        Console.WriteLine(watch.Elapsed.TotalMilliseconds)

        ' This isn't measured.
        For i As Integer = 0 To 1000 - 1
            Threading.Thread.Sleep(1)
        Next

        ' Begin measuring again.
        watch.Start()

        ' Measure.
        For i As Integer = 0 To 1000 - 1
            Threading.Thread.Sleep(1)
        Next

        ' Stop measuring again (not always needed).
        watch.Stop()
        Console.WriteLine(watch.Elapsed.TotalMilliseconds)

        Console.ReadLine()
    End Sub


    Sub Main2()
        ' Create a Stopwatch and sleep for zero milliseconds.
        Dim stopwatch As New Diagnostics.Stopwatch   ' = stopwatch.StartNew
        stopwatch.Start()

        Thread.Sleep(0)
        stopwatch.Stop()

        ' Write the current time.
        Console.WriteLine(stopwatch.ElapsedMilliseconds)
        Console.WriteLine(DateTime.Now.ToLongTimeString)

        ' Start a new Stopwatch.
        stopwatch = stopwatch.StartNew
        Thread.Sleep(5000)
        stopwatch.Stop()
        Console.WriteLine(stopwatch.ElapsedMilliseconds)
        Console.WriteLine(DateTime.Now.ToLongTimeString)

        ' Start a new Stopwatch.
        stopwatch = stopwatch.StartNew
        Thread.Sleep(1000)
        stopwatch.Stop()
        Console.WriteLine(stopwatch.ElapsedMilliseconds)

        ' Start a new Stopwatch and use SpinWait.
        stopwatch = stopwatch.StartNew
        Thread.SpinWait(1000000000)
        stopwatch.Stop()
        Console.WriteLine(stopwatch.ElapsedMilliseconds)

        Console.ReadLine()
    End Sub


    Sub Main()
        'Dim sw As New Diagnostics.Stopwatch
        'sw.Start()

        'For i As Integer = 0 To 100000
        '    For k As Integer = 0 To 100000

        '    Next
        'Next
        'sw.Stop()
        'Console.WriteLine(sw.ElapsedMilliseconds)
        'Console.ReadLine()


    End Sub

End Module

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...