Forum: Algorithmen, Datenstrukturen und Klassendesign
by TiGü,
1. Jul 2021
Okay, du nimmst TCustomRESTClient.Create(const ABaseApiURL: string); als Constructor, kannte ich so auch noch nicht.
Der Client hat dann keinen Owner und muss selber freigeben werden.
Wenn du aber dann noch Response und Request so erstellst, dass der Client der Owner ist (Übergabe im Constructor), dann kannst du die nicht händisch freigeben.
Daher resultieren wahrscheinlich deine "Beim...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TiGü,
1. Jul 2021
Das ist mir Zuviel Pseudocode und Zuwenig Kontext, um irgendwas sinnvolles dazu sagen zu können.
Wer ist denn der Owner von Request, Response und Client?
Kannst du dein Problem vielleicht in einen vollständigen kleinen Beispiel zip-archivieren und hochladen?
Vergesse das mal mit dem eigenen Extra-Thread.
Speichere dir den TRESTExecutionThread in eine Member-Variable und prüfe dem Empfang...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TiGü,
30. Jun 2021
Musst du dir denn einen eigenen Thread bauen?
Kannst du nicht das TCustomRESTRequest.ExecuteAsync nutzen und für das Abbrechen das dafür vorgesehene Cancel?
procedure TForm3.FormClick(Sender: TObject);
var
RESTThread: TRESTExecutionThread;
begin
RESTThread := RESTRequest1.ExecuteAsync({Bitte hier die optionalen Argumente beachten wie CompletionHandler und...