Я пытаюсь сделать функцию:
function MyFunction(parameter:string) : string;
begin
TThread.CreateAnonymousThread(procedure ()
var temp : string;
begin
temp := paramet;
//some works on temp variable
result := temp; <-- error here because it is a procedure
end).Start;
end;
как сделать так, чтобы MyFunction возвращала временную переменную после окончания потока?
Также я пробовал так:
function MyFunction(parameter:string) : string;
vat temp : string;
begin
TThread.CreateAnonymousThread(procedure ()
begin
temp := paramet;
//some works on temp variable
end).Start;
result := temp;
end;
таким образом он компилируется, но возвращает пустую строку.функция возвращает результат и не ожидает завершения потока.
Или, может быть, я делаю это неправильно, потому что я не нашел ни одного примера, как это сделать?