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

Вниз

Вызов функции из цикла   Найти похожие ветки 

 
Anonimus ©   (2005-06-08 11:26) [0]

Добрый день. есть следующая задача. Имеем функцию, время выполнения которой может колебаться от 7-8 ms до 2 s.
Требуется вызвать эту функцию из цикла для каждого элемента некоего массива записей, при том непрерывно для каждого элемента массива вне зависимости от того, выполнена ли функция для предидущего элемента массива. Т.е.

function f1(<paramlist>): boolean;
var arr: array of tMyRec;

begin
 for i:=0 to Length(arr)-1 do
   if f1(arr[i]) then begin
     <statements>
   end;
end;


при этом нужно, чтобы f1(arr[1]) могла вернуть результат независимо от того отработала ли f1(arr[0])
Какэто можно реализовать?


 
dmitry501 ©   (2005-06-08 11:35) [1]

Anonimus ©   (08.06.05 11:26)
Функцию f1 реализуй через tthread


 
GreatMaster   (2005-06-08 11:38) [2]

А накой ты рекурсию то заворачиваешь?


 
Digitman ©   (2005-06-08 11:39) [3]

для каждого аргумента организуй доп.трэд и вызывай ф-цию с этим аргументом в созданном трэде


 
Anonimus ©   (2005-06-08 11:48) [4]

Т.е. я так понимаю:


function f1(<paramlist>,th: TThread): boolean;
begin
..........
 th.Terminate;
end;
var arr: array of tMyRec;
   th: TThread;

begin
for i:=0 to Length(arr)-1 do begin
  th:=TThread.Create;
  if f1(arr[i]) then begin
    <statements>
  end;
  th.resume;
end;
end;


Я правильно понял?


 
Anonimus ©   (2005-06-08 11:49) [5]

dmitry501 ©   (08.06.05 11:35) [1]
Рекурсии здесь нет, ты немного не правильно понял


 
Anonimus ©   (2005-06-08 11:50) [6]

Anonimus ©   (08.06.05 11:49) [5]
Сорри, не  тому ответил :-)



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

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

Наверх




Память: 0.47 MB
Время: 0.066 c
1-1117784595
аматор
2005-06-03 11:43
2005.06.29
открыть фай


3-1116673940
SlyFox
2005-05-21 15:12
2005.06.29
FireBird. Ошибка при выполнении Locate


4-1114784588
Виталик
2005-04-29 18:23
2005.06.29
Соответствие классов в Delphi и Си


1-1118319200
john_mag
2005-06-09 16:13
2005.06.29
OnClose


3-1116515179
Karlson
2005-05-19 19:06
2005.06.29
Фильтр в компоненте TTable и ему подобным