Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   Fmx (https://www.delphipraxis.net/217517-fmx.html)

tkhandel 16. Jul 2025 19:53

Fmx
 
Hallo,
ich habe eine procedure in einem FMX Projekt (Windows) das eine
procedure hat in der wiederum zwei proceduren aufgerugfen werden.

procedure Datenabgleich
begin
...
...
Datensenden (procedure)
Daten holen (procedure)
aufräumen Files löschen)
...
...

end;

kann es sein das unter fmx nicht gewartet wird, sondern die 2. procedure ausgeführt wird obwohl die erste noch nicht durch ist.

Ich hatte vorher den Code nicht aufgeteilt und der reihe nach in der procedure Datenabgleich abgearbeitet, seit der Aufteilung
passiert es hin und wieder das die Daten nicht in der Cloud ankommen aber auch keine Fehlermeldung auftaucht. Ich vermute das
er bei einer langsamen Verbindung aufräumt bevor er mit senden fertig ist.

Was kann ich da tun ? würde er bei dem Aufruf einer function warten (Rückgabewert prüfen)

TomyN 17. Jul 2025 06:07

AW: Fmx
 
Bist Du sicher, dass die Prozeduren nicht vorzeitig verlassen werden?
An sich ändert sich ja das Pascal nicht, sondern 'nur' die Komponenten.

MyRealName 17. Jul 2025 07:27

AW: Fmx
 
Die Frage ist doch, was Du in Datensenden (1. Prozedur) machst, Delphi ist ja Event-driven. Du stösst was an und über ein Event kriegst Du von Komponenten Bescheid, wann es fertig ist. Nur Wenige Komponenten sind da blockierend, Indy macht das wohl.
Ist Dein Datensenden eine Routine, die da eine Komponente asynchron etwas ausführen lässt, dann wäre es normal, dass prozedur 2 schon ausgeführt wird, während die 1. noch läuft.


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:55 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz