Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: время выполнения скрипта в миллисекундах Добавлено: 27.10.09 17:17  

Автор вопроса:  ilang-ilang | ICQ: 355115304 
нужно замерить время выполнения функции, но в миллисекундах. подскажите плиз..

Ответить

  Ответы Всего ответов: 6  

Номер ответа: 1
Автор ответа:
 VβÐUηìt



Вопросов: 246
Ответов: 3333
 Web-сайт: смекаешь.рф
 Профиль | | #1
Добавлено: 27.10.09 18:20
  1.  
  2. Dim G As Single
  3. G = Timer
  4. Call MyProcedure()
  5. MsgBox (("Время выполнения функции MyProcedure - ") & (Timer - G) * 1000 & (" миллисекунд.")),vbExclamation

Ответить

Номер ответа: 2
Автор ответа:
 AngryBadger



Вопросов: 33
Ответов: 245
 Профиль | | #2 Добавлено: 27.10.09 18:28
Функция возвращает время в миллисекундах с момента включения компьютера
  1. Private Declare Function GetTickCount Lib "kernel32" () As Long

Ответить

Номер ответа: 3
Автор ответа:
 ilang-ilang



ICQ: 355115304 

Вопросов: 5
Ответов: 16
 Профиль | | #3 Добавлено: 28.10.09 16:44
конечно это все классно, что вы написали, но если функция выполняется меньше секунды, то умножай на 1000 таймер, не умножай, все равно получается ноль(

Ответить

Номер ответа: 4
Автор ответа:
 ilang-ilang



ICQ: 355115304 

Вопросов: 5
Ответов: 16
 Профиль | | #4 Добавлено: 28.10.09 17:02
нужен таймер с отсчетом миллисекунд

Ответить

Номер ответа: 5
Автор ответа:
 AngryBadger



Вопросов: 33
Ответов: 245
 Профиль | | #5 Добавлено: 28.10.09 17:29
Не могу понять чего тебе нужно??? Чем не подходит??

  1. Private Declare Function GetTickCount Lib "kernel32" () As Long
  2.  
  3. Sub TimeTest()
  4.  
  5. Dim a As Variant
  6. Dim b As Variant
  7. Dim Time1 As Double
  8. Dim Time2 As Double
  9. Dim t As Double
  10.  
  11. Time1 = GetTickCount
  12.  
  13. a = 25.5421564512346
  14. b = 0.22222548793333
  15.  
  16. For i = 1 To 10000
  17. Debug.Print a * b
  18. Next i
  19.  
  20. Time2 = GetTickCount
  21.  
  22. t = Time2 - Time1
  23.  
  24. MsgBox t
  25.  
  26. End Sub

Ответить

Номер ответа: 6
Автор ответа:
 ilang-ilang



ICQ: 355115304 

Вопросов: 5
Ответов: 16
 Профиль | | #6 Добавлено: 29.10.09 13:05
AngryBadger спасибо)) нашла свою ошибку. до того как на этот форум зашла тоже пробовала GetTickCount, но выдавало неверный результат. вот, кстати, еще один вариант, только немного хуже:
  1. Set timeNow = CreateObject("WScript.Shell").exec("CMD /C ECHO %TIME%").StdOut
  2. msgbox timeNow.readline
- выдает текущее время с миллисекундами.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам