Private Declare Function GetTickCount& Lib "kernel32.dll" ()
Private Sub Form_Load()
iMlSeconds& = GetTickCount
'Здесь может быть код Вашей программы.
MsgBox "Время выполнения программы : " & _
GetTickCount - iMlSeconds& & " милисек.", , ""
End Sub
Продолжительность работы программы
Думала, может можно получать время в тиках, только вот не знаю, как это осуществить в Visual Basic
Код:
'Здесь идёт код
StartTime=Timer-StartTime[/Highlight]StartTime–переменная не ниже типа Single(желательно именно его).После выполнения этого куска кода в StartTime будет время работы программы.Единственное что–Timer не очень точная функция,поэтому лучше мерять чем-нибудь другим(хоть теми же тиками)
Если вы хотите узнать время работы другой программы,запущенной от вашей(автор ничего не уточнила),то тут надо те же средства,только надо включить ожидание WaitForSingleObject
Цитата: pashulka
Код:
Private Declare Function GetTickCount& Lib "kernel32.dll" ()
Private Sub Form_Load()
iMlSeconds& = GetTickCount
'Здесь может быть код Вашей программы.
MsgBox "Время выполнения программы : " & _
GetTickCount - iMlSeconds& & " милисек.", , ""
End Sub
Private Sub Form_Load()
iMlSeconds& = GetTickCount
'Здесь может быть код Вашей программы.
MsgBox "Время выполнения программы : " & _
GetTickCount - iMlSeconds& & " милисек.", , ""
End Sub
С тиками получилось, спасибо, но точность выдаваемого времени маленькая. А можно как-то увеличить, допустим, до наносекунд?
Цитата: @pixo $oft
[Highlight=VB]StartTime=Timer
'Здесь идёт код
StartTime=Timer-StartTime[/Highlight]StartTime–переменная не ниже типа Single(желательно именно его).После выполнения этого куска кода в StartTime будет время работы программы.Единственное что–Timer не очень точная функция,поэтому лучше мерять чем-нибудь другим(хоть теми же тиками)
Если вы хотите узнать время работы другой программы,запущенной от вашей(автор ничего не уточнила),то тут надо те же средства,только надо включить ожидание WaitForSingleObject
'Здесь идёт код
StartTime=Timer-StartTime[/Highlight]StartTime–переменная не ниже типа Single(желательно именно его).После выполнения этого куска кода в StartTime будет время работы программы.Единственное что–Timer не очень точная функция,поэтому лучше мерять чем-нибудь другим(хоть теми же тиками)
Если вы хотите узнать время работы другой программы,запущенной от вашей(автор ничего не уточнила),то тут надо те же средства,только надо включить ожидание WaitForSingleObject
и таймер работает, только тоже не фиксирует время, так как программа быстро работает
"Если вы хотите узнать время работы другой программы,запущенной от вашей(автор ничего не уточнила)..." - ничего такого, просто по нажатию на кнопку происходят расчеты и нужно узнать их время выполнения
Если серьёзно,то инструкция RdTSC считает очень точно–она читает 64-хразрядный счётчик меток реального времени.Надеюсь,такой точности вам будет достаточно;)
Могу написать такую библиотеку,только или я должен знать,как преобразовать это время в наносекунды,или вы–в своей программе преобразовывать
Upd:
Могу и некоторые расчёты(не очень сложные) переписать на асме.Только не сейчас–сессия…но на следующей неделе полегчает:)