Подскажите как правильно передать в таск параметры?
Function Test(Const Xn, Wn: Array of Real): Real;
Var
Sum: Real; // взвешенная сумма.
i: Integer; // счетчик.
tasks: array of itask;
begin
Sum := 0;
SetLength(tasks, High(Xn));
For i := 0 To High(Xn) Do
begin
tasks[i] := TTask.Create(
procedure()
begin
Sum := Sum + Xn[i] * Wn[i]; // подсчет взвешенной суммы.
end);
for I := 0 to High(tasks) do
tasks[i].Start;
TTask.WaitForAll(tasks);
end;
end;
Сейчас ругается на Xn[i] * Wn[i] я так понимаю потому что нельзя обращаться к масивам из потока как правильно сделать?