
05.04.2010, 22:51
|
|
Постоянный
Регистрация: 25.07.2008
Сообщений: 454
С нами:
9365528
Репутация:
425
|
|
Сообщение от JnK
В обоих циклах идет сравние:
1. 1=1
2. true=true; (т.е. -1=-1)
2 GhostOnline, обзываться не стоит, перепутал условие.
P.s. Сорри за оффтоп.
Проверьте код:
PHP код:
program TestCycleDuration;
{$APPTYPE CONSOLE}
uses
SysUtils, DateUtils;
var
i: integer;
timeStart, timeEnd: TDateTime;
begin
Writeln('................................');
Writeln('................................');
Writeln('................................');
Writeln('................................');
Writeln('First test, cycle "while true do"');
Writeln('Testing...');
i := 0;
timeStart := now;
while true do
begin
i := i + 1;
if i = 2000000000 then
Break;
end;
timeEnd := Now;
Writeln('Test duration: ' + inttostr(MilliSecondsBetween(timeEnd, timeStart)) +
'ms');
Writeln('................................');
Writeln('................................');
Writeln('................................');
Writeln('................................');
Writeln('Second test, cycle "while 1=1 do"');
Writeln('Testing...');
i := 0;
timeStart := now;
while 1 = 1 do
begin
i := i + 1;
if i = 2000000000 then
Break;
end;
timeEnd := Now;
Writeln('Test duration: ' + inttostr(MilliSecondsBetween(timeEnd, timeStart)) +
'ms');
Readln;
end.
UPD2: подправил
Рекомендуется тестировать при как можно меньшем кол-ве запущенных приложений!
тест общий занимает около 2х секунд... интересны результаты... Абсолютно не претендую на адекватность теста, тем более скорее всего он не особо адекватен..
UPD3: Прогнав пару-тройку раз, заметил что результаты примерно одинаковые, на моей машине значения либо 671ms ибо 687ms
Последний раз редактировалось AlexTheC0d3r; 05.04.2010 в 23:04..
|
|
|