Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.08.27;
Скачать: CL | DM;

Вниз

Как вычислять параллельно?   Найти похожие ветки 

 
grisme ©   (2006-05-03 17:56) [0]

Возникла проблема. Необходимо вычислить время большого числа итераций. Делал таймер так:
 sec:=0;
 timer1.enabled:=true;
 for i:=1 to [...] do [...];
 timer1.enabled:=false;
 caption:=inttostr(sec);
{в коде OnTimer наращиваю sec}
Естесственно,seс выходит равный 0!..( Думаю,надо параллельный какой-нибудь процесс создать...Подскажите плиз как примерно это должно выглядеть...{пример был бы ОЧЕНЬ хорош}


 
Eraser ©   (2006-05-03 18:06) [1]


> grisme ©   (03.05.06 17:56)


var
 t1, t2: TDateTime;
...
t1 := now; // или GetTickCount
<интерации>
t2 := now; // или GetTickCount
t1 := t2 - t1;
ShowMessage(TimeToStr(t1)); // или любая другая ф-я форматирования даты.


 
grisme ©   (2006-05-03 19:02) [2]

Eraser

Пасиба огромное, сразу не дошло...:) А как все-таки(интереса ради) можно вычислять еще параллельно? Создавать отдельный поток?


 
Eraser ©   (2006-05-03 19:10) [3]


> grisme ©   (03.05.06 19:02) [2]

можно.
сколько примерно времени длится вычисление?


 
grisme ©   (2006-05-03 19:31) [4]

примерно минуту.


 
Eraser ©   (2006-05-03 20:00) [5]


> grisme ©   (03.05.06 19:31) [4]

тогда лучше делать так - вычисления выполнять в доп. потоке, а время засекать обычным таймером с интервалом 1 сек.


var
 i: Integer;
...
i := 0;
Timer1.Interval := 1000;
Timer1.Enabled := true;
<начало создание потока вычислений>
...
procedure TForm1.Timer1Timer(Sender: TObject);
begin
 Inc(i);
 label1.Сaption := "Вычисления идут " + inttostr(i) + " секунд";
end;

не забыть отключить таймер после завершения работы доп. потока.


 
grisme ©   (2006-05-03 20:52) [6]

Спасибо, Eraser.;)



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

Текущий архив: 2006.08.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.031 c
15-1154573387
Пользоват.
2006-08-03 06:49
2006.08.27
Помогите переключить раскладку при входе в виндовс.


15-1154090866
Der Nechk@ssoff
2006-07-28 16:47
2006.08.27
С праздником!


15-1154078672
Ketmar
2006-07-28 13:24
2006.08.27
я туп в интерфейсах %-(


2-1154608817
dimdnepr
2006-08-03 16:40
2006.08.27
Компонент TQuickRep


15-1153983727
tButton
2006-07-27 11:02
2006.08.27
Delphi: 7 vs 5