REST.Client.TCustomRESTRequest.ExecuteAsync
Delphi
function ExecuteAsync(ACompletionHandler: TCompletionHandler = nil; ASynchronized: Boolean = True; AFreeThread: Boolean = True; ACompletionHandlerWithError: TCompletionHandlerWithError = nil): TRESTExecutionThread;
C++
TRESTExecutionThread* __fastcall ExecuteAsync(System::Sysutils::_di_TProc ACompletionHandler = System::Sysutils::_di_TProc(), bool ASynchronized = true, bool AFreeThread = true, System::DelphiInterface<System::Sysutils::TProc__1<System::TObject*> > ACompletionHandlerWithError = System::DelphiInterface<System::Sysutils::TProc__1<System::TObject*> >());
Inhaltsverzeichnis
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
function | public | REST.Client.pas REST.Client.hpp |
REST.Client | TCustomRESTRequest |
Beschreibung
Führt eine Anforderung asynchron aus, d. h. im eigenen Thread der Methode.
Rückgabewert
Wenn der Parameter AFreeThread
auf False
gesetzt ist, gibt diese Methode eine Referenz auf diesen Ausführungs-Thread zurück.
Hinweis: Wenn der Parameter
AFreeThread
aufTrue
gesetzt ist, gibt die Methode eine ungültige Referenz zurück.
Parameter
Diese Methode legt die folgenden Parameter fest:
ACompletionHandler
– Gibt eine anonyme Methode an, die nach Abschluss der Anforderungsausführung ausgeführt werden soll.ASynchronized
– MitTrue
wird festgelegt, dass die inACompletionHandler
angegebene Methode im Haupt-Thread-Kontext ausgeführt wird. BeiFalse
wirdACompletionHandler
im Ausführungs-Thread-Kontext ausgeführt.AFreeThread
– BeiTrue
wird der Ausführungs-Thread nach Abschluss der Anforderungsausführung freigegeben.
Einzelheiten
Während der Ausführung des Ausführungs-Threads sollte aus anderen Threads (einschließlich des Haupt-Threads) nicht auf die Eigenschaften aller beteiligten TCustomRESTClient- und TCustomRESTRequest-Instanzen zugegriffen werden.
Die Verwendung der Methode ExecuteAsync wird auf mobilen Plattformen dringend empfohlen. iOS (und wahrscheinlich Android) beenden eine Anwendung, wenn der Eindruck entsteht, dass der Haupt-Thread nicht reagiert, d. h. wenn eine ausgeführte Anforderung mehr als eine oder zwei Sekunden bis zur Rückkehr beansprucht. Ein träges Verhalten (hervorgerufen durch die Blockierung des Haupt-Threads) ist auf mobilen Geräten nicht akzeptabel.