Как вызвать асинхронную функцию в TMS WEB Core?

У меня есть простая функция в Delphi, помеченная как функция [async].

В настоящее время функция ничего не делает. Он буквально просто возвращает значение BooleanTrue:

[async]
function MyAsyncFunction(): Boolean;

implementation

function MyAsyncFunction(): Boolean;
begin
  Result := True;
end;

Но затем каждый раз, когда я пытаюсь использовать такую ​​функцию, как:

if MyAsyncFunction then
begin
  // Do Stuff
end;

то я получаю следующую ошибку:

[Ошибка] Ожидается логическое значение, но контекст найден

Что такое Context и как правильно вызвать функцию async в TMS WEB Core с помощью Delphi?

Вы понимаете, что означает asynch?

Ken White 23.05.2024 00:31
tmssoftware.com/site/blog.asp?post=744
Dalija Prasnikar 23.05.2024 08:34
Что такое компоненты React? Введение в компоненты | Типы компонентов
Что такое компоненты React? Введение в компоненты | Типы компонентов
Компонент - это независимый, многократно используемый фрагмент кода, который делит пользовательский интерфейс на более мелкие части. Например, если мы...
0
2
116
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

@DalikaPrasnikar дал отличную ссылку в комментариях относительно async в TMS WEB Core.

Оказывается, мне просто пришлось обернуть вызов MyAsyncFunction в такую ​​функцию Await:

if Await(MyAsyncFunction) then
begin
  // Do Stuff
end;

И тогда это работает

Но вам также необходимо пометить метод, из которого вы вызываете, как [async], иначе вы получите ошибку await only available in async procedure.

Другие вопросы по теме