Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.04.28;
Скачать: [xml.tar.bz2];

Вниз

Как узнать время выполнения процедуры   Найти похожие ветки 

 
Балбес   (2003-04-13 23:24) [0]

Как узнать сколько времени выполнялась процедура?


 
neodiX   (2003-04-13 23:31) [1]

В начале процедуры пишешь:
l:=getTickCount;
где l, это var l:longint;
в конце
edit1.text:=inttostr(gettickcount-l);
так, ты в милисекудах получишь время выполнения процедуры


 
Балбес   (2003-04-13 23:34) [2]

Огромное спасибо, за оперативный ответ!!!
ОГРОМНОЕ! СПАСИБО!!!
Не ожидал, если честно :-)


 
neodiX   (2003-04-13 23:51) [3]

:)
Не привыкай. Чем сложнее вопросы, тем дольше ждать придется. Иногда пока ждешь, сам выесняешь проблему. Может и хорошо :)


 
Юрий Зотов   (2003-04-14 00:18) [4]

> так, ты в милисекудах получишь время выполнения процедуры

Если в этот промежуток времени не становились активными никакое другое приложение и никакой другой поток нашего приложения. Если же становились, то результат такого "измерения" может быть любым.

Чтобы снизить погрешность до минимума, можно перед выполнением процедуры установить своему процессу и потоку максимальные приоритеты, а после ее выполнения - снять их. Лучше делать это в блоке try-finally.


 
neodiX   (2003-04-14 00:48) [5]

>Юрий Зотов
Полностью согласен


 
kravchuk   (2003-04-14 15:46) [6]

Есть вроде неплохие утилиты для этого, профайлеры www.torry.net Profilers, помоему


 
Балбес   (2003-04-16 23:49) [7]

В profilers нашёл такую ерунду:
в модуле mmsystem функция timeGetTime, она идентична GetClockCount, по-моему...
А как приоритет-то менять?


 
Спрашивающий   (2003-04-17 01:46) [8]

procedure IdlePro;
begin
SetPriorityClass(GetCurrentProcess, IDLE_PRIORITY_CLASS );
SetThreadPriority(GetCurrentThread, THREAD_PRIORITY_IDLE );
end;


procedure NormPro;
begin
SetPriorityClass(GetCurrentProcess, NORMAL_PRIORITY_CLASS );
SetThreadPriority(GetCurrentThread, THREAD_PRIORITY_NORMAL );
end;

procedure HigPro;
begin
SetPriorityClass(GetCurrentProcess, HIGH_PRIORITY_CLASS );
SetThreadPriority(GetCurrentThread, THREAD_PRIORITY_HIGHEST );
end;



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.04.28;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.007 c
6-91420
Snake2000
2003-03-05 15:53
2003.04.28
Protected onError метод


1-91248
Igorek
2003-04-14 19:39
2003.04.28
Get Зарегистрированный редактор свойства


14-91513
[NIKEL]
2003-04-10 18:17
2003.04.28
Автоматизация Страхования


3-91171
bogdan
2003-04-09 16:05
2003.04.28
MultiSelect - определить выбранные записи


1-91264
AntonMe
2003-04-17 05:51
2003.04.28
Общие вопросы





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский