Hej. Har stöt på något mycket intressant när jag skulle testa om me. påverkade prestandan. >Tiden ökar? Någon som vet varför? Skäms så mycket... Att jag missat något så uppenbart, är inte likt mig... :O) HejMycket intressant problem
Använde följande kod:
Option Explicit
Private Declare Function GetTickCount Lib "kernel32" () As Long
Public Sub Test()
End Sub
Private Sub Command1_Click()
Dim TickCount As Long
Dim Index As Long
Const Times As Long = 10000
TickCount = GetTickCount()
For Index = 1 To Times
Me.Test
Next
Debug.Print "Time(Me.Test): " & GetTickCount() - TickCount
For Index = 1 To Times
Test
Next
Debug.Print "Time(Test): " & GetTickCount() - TickCount
For Index = 1 To Times
Me.Test
Next
Debug.Print "Time(Me.Test): " & GetTickCount() - TickCount
For Index = 1 To Times
Test
Next
Debug.Print "Time(Test): " & GetTickCount() - TickCount
For Index = 1 To Times
Me.Test
Next
Debug.Print "Time(Me.Test): " & GetTickCount() - TickCount
For Index = 1 To Times
Test
Next
Debug.Print "Time(Test): " & GetTickCount() - TickCount
For Index = 1 To Times
Me.Test
Next
Debug.Print "Time(Me.Test): " & GetTickCount() - TickCount
For Index = 1 To Times
Test
Next
Debug.Print "Time(Test): " & GetTickCount() - TickCount
For Index = 1 To Times
Me.Test
Next
Debug.Print "Time(Me.Test): " & GetTickCount() - TickCount
For Index = 1 To Times
Test
Next
Debug.Print "Time(Test): " & GetTickCount() - TickCount
End Sub
Fick följande resultat:
Time(Me.Test): 20
Time(Test): 30
Time(Me.Test): 50
Time(Test): 60
Time(Me.Test): 80
Time(Test): 90
Time(Me.Test): 110
Time(Test): 120
Time(Me.Test): 140
Time(Test): 160
Tiden ökar? Någon som vet varför?Sv: Mycket intressant problem
Är inte det ganska självklart? Ju längre tiden går, desto större blir differensen mellan det initiala TickCount värdet och det du får tillbaka från GetTickCount.
Om du bara vill ta tiden på en For loop måste du sätta TickCount på nytt före varje loop.
MSSv: Mycket intressant problem
Ber alla hemskt mycket om ursäkt... Sv: Mycket intressant problem
>Att jag missat något så uppenbart, är inte likt mig... :O)
Jasså ? Skrivklåda "skriv först tänk sedan"
mvh
Sven