0

我希望能够在 ASP.net (VBscript) 中计算页面加载时间。将 Trace="true" 添加到页面指令很好,但我需要实际为事件计时并将其存储在变量中。

在 ASP 中,使用 Timer 对象很容易,但在 .net 中,我在 Google 上找不到任何东西。

我需要一些类似的东西:

Dim startTime
Dim endTime

startTime = now()
doBigFunction()
endTime = now()
response.write("That took " & endTime - startTime & " milliseconds")

干杯!

4

3 回答 3

3

试试秒表

    Dim stopWatch As New Stopwatch()
    stopWatch.Start()
    Thread.Sleep(10000)
    stopWatch.Stop()
    ' Get the elapsed time as a TimeSpan value.
    Dim ts As TimeSpan = stopWatch.Elapsed

    ' Format and display the TimeSpan value.
    Dim elapsedTime As String = _ 
         String.Format("{0:00}:{1:00}:{2:00}.{3:00}", _
         ts.Hours, ts.Minutes, ts.Seconds, ts.Milliseconds / 10)
    Console.WriteLine(elapsedTime, "RunTime")

您不必计算,如果您调用 stopWatch.Reset(),您可以重复使用它

从这里获取示例:http: //msdn.microsoft.com/en-us/library/system.diagnostics.stopwatch.aspx

于 2010-06-08T13:43:24.210 回答
1

对于这个级别,您可以使用该DateTime.Now属性。ATimeSpan是两个DateTime值之间的差。

对于更准确的东西,您需要Stopwatch.

于 2010-06-08T13:43:13.570 回答
1

DataTime 类有一个 DateTime.Now 静态成员,可以执行您希望它执行的操作:

    Dim startTime As DateTime
    Dim endTime As DateTime

    startTime = DateTime.Now
    For i = 0 To 100000000
        Dim j As Integer = i * 2
    Next
    endTime = DateTime.Now
    Dim result As TimeSpan = endTime - startTime
    Console.WriteLine(result.Milliseconds)
于 2010-06-08T13:49:46.007 回答