Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.04.2008, 14:49   #1
AngelOfDeath
Delphi/C++/Asm
Форумчанин Подтвердите свой е-майл
 
Аватар для AngelOfDeath
 
Регистрация: 28.03.2008
Сообщений: 358
Вопрос Время процедуры

Как можно программно узнать сколько миллисекунд длилась процедура?
И записать в Label например
AngelOfDeath вне форума Ответить с цитированием
Старый 27.04.2008, 15:02   #2
N!ckeL
Форумчанин
 
Регистрация: 29.03.2008
Сообщений: 300
По умолчанию

Если процедура достаточно объёмная то можно с помощью таймера, хотя не совсем точно будет.
Карп преодолевший водопад становится драконом.
N!ckeL вне форума Ответить с цитированием
Старый 27.04.2008, 15:08   #3
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

a := gettickcount;
процедура
b := gettickcount;
c := b-a; // в милисекундах
eoln вне форума Ответить с цитированием
Старый 27.04.2008, 15:27   #4
B_N
Новичок
Джуниор
 
Регистрация: 18.01.2008
Сообщений: 1,720
По умолчанию

К методу от eoln можно ещё добавить метод QueryPerformanceFrequency/QueryPerformanceCounter
http://programmersforum.ru/showpost....3&postcount=10

т.е., если сократить:

Код:
//...................
	LARGE_INTEGER c1, c2, freq;
	double lapse;

	QueryPerformanceFrequency(&freq);

	QueryPerformanceCounter(&c1);
//........... здесь что-то происходит
	QueryPerformanceCounter(&c2);


	lapse = (c2.QuadPart - c1.QuadPart) / freq.QuadPart;	// <----- затраченое время
//.............
B_N вне форума Ответить с цитированием
Старый 27.04.2008, 15:31   #5
AngelOfDeath
Delphi/C++/Asm
Форумчанин Подтвердите свой е-майл
 
Аватар для AngelOfDeath
 
Регистрация: 28.03.2008
Сообщений: 358
По умолчанию

Если несложно сделайте пример с исходником
AngelOfDeath вне форума Ответить с цитированием
Старый 28.04.2008, 01:28   #6
B_N
Новичок
Джуниор
 
Регистрация: 18.01.2008
Сообщений: 1,720
По умолчанию

Цитата:
Сообщение от AngelOfDeath Посмотреть сообщение
Если несложно сделайте пример с исходником
Я же дал ссылку на рабочий пример, который ещё и частоту процессора в нагрузку показывает....
B_N вне форума Ответить с цитированием
Старый 28.04.2008, 06:20   #7
AngelOfDeath
Delphi/C++/Asm
Форумчанин Подтвердите свой е-майл
 
Аватар для AngelOfDeath
 
Регистрация: 28.03.2008
Сообщений: 358
По умолчанию

Тогда вопросы:
1)Куда это всё запихнуть?
2)А разве это Delphi? Помоему это C++
AngelOfDeath вне форума Ответить с цитированием
Старый 28.04.2008, 09:41   #8
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Интересно поставленные вопросы C++ ну для меня, он похож на дельфи как братья близнецы. Да тем более, там переводить то нечего. А куда запихнуть это уже интересно Откуда мы знаем где ваша процедура выполняется ?
BOBAH13 вне форума Ответить с цитированием
Старый 28.04.2008, 13:18   #9
AngelOfDeath
Delphi/C++/Asm
Форумчанин Подтвердите свой е-майл
 
Аватар для AngelOfDeath
 
Регистрация: 28.03.2008
Сообщений: 358
По умолчанию

Цитата:
Откуда мы знаем где ваша процедура выполняется ?
Ну вот например:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var I:Integer;
begin
I:=0;
while I<10000 do
begin
  i:=i+1;
  Button1.Caption:=IntToStr(I)
end;
end;
Куда тут пихнуть код?
И вывести время выполнения в Label
AngelOfDeath вне форума Ответить с цитированием
Старый 29.04.2008, 14:06   #10
AngelOfDeath
Delphi/C++/Asm
Форумчанин Подтвердите свой е-майл
 
Аватар для AngelOfDeath
 
Регистрация: 28.03.2008
Сообщений: 358
По умолчанию

Цитата:
Интересно поставленные вопросы C++ ну для меня, он похож на дельфи как братья близнецы. Да тем более, там переводить то нечего.
Я С++ вообще незнаю
А перевести там тем более ничего не смогу
AngelOfDeath вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
процедуры Killbrum Помощь студентам 5 10.06.2008 08:59
процедуры FIIR БД в Delphi 9 26.02.2008 11:26
процедуры FIIR Помощь студентам 2 26.02.2008 08:12
Процедуры (Pascal) [Smarik] Помощь студентам 6 16.01.2008 14:52
Вызов процедуры Илья Кибель Помощь студентам 7 17.09.2007 19:43