![]() |
Ohne Rekursion eine Methode aufrufen
Hi zusammen,
ich bräuchte mal nen Denkanstoss von euch. Situation vereinfacht dargestellt: - ich habe eine public Methode die in etwa so aussieht
Delphi-Quellcode:
- die Methode schreibt bestimmte Daten in eine DB
procedure Klasse.Execute(Param1, Param2);
begin try MachWas; except //hier ist der Knackpunkt end; end; - falls die Methode irgend eine Exception auslösen sollte (in dem Fall wird auch nix in die DB geschrieben), soll Klasse.Execute neu ausgeführt werden .. das Dumme hierbei ist, wenn ich die Methode rekursiv Aufrufe und die Methode nicht zu einem erfolgreichen DB-Eintrag kommt, wird der Stack irgenwann auf alle Fälle voll sein... Wie mache ich das am geschicktesten? Über Timer hab ich mir überlegt is das auch nicht grad die wahre Pracht Gruß Tyrael |
Re: Ohne Rekursion eine Methode aufrufen
mit
Delphi-Quellcode:
Wenn die Anwendung nicht abhängig von MachWas ist, solltest du das
repeat
Fehler:=false; try MachWas; except Fehler:=true; end; until not Fehler; ganze in einen Thread auslagern, damit du weiterarbeiten kannst. Grüße Minz |
Re: Ohne Rekursion eine Methode aufrufen
:wall: , ich :stupid:
Danke dir minze, genau so ist es richtig. Gruß Tyrael |
Re: Ohne Rekursion eine Methode aufrufen
np :mrgreen:
|
Re: Ohne Rekursion eine Methode aufrufen
Hallo,
prinzipiell würde ich hier aber noch eine Zählvariable einführen die dafür sorgt, dass der Versuch nach X Fehlern endgültig ebgebrochen wird... Ciao Peter |
Re: Ohne Rekursion eine Methode aufrufen
nein, das darf nicht peter, er muss es immer wieder probieren
ich mach auch nen sleep rein edit: es läuft in seinem eigenen Thread |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:57 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