Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Einfrieren vor Connection-TimeOut verhindern (https://www.delphipraxis.net/41792-einfrieren-vor-connection-timeout-verhindern.html)

Gambit 8. Mär 2005 18:17

Datenbank: MySQL • Version: 4.023 • Zugriff über: ZEOS

Einfrieren vor Connection-TimeOut verhindern
 
Hallo,

wenn man zu einer Datenbank auf einem Server connection will, friert die Anwendung ein, wenn keine Verbindung herrgestellt werden kann. Bis zur Fehlermeldung steht dann das Programm. Kann man das irgendwie verhindern?

Gruß

Gambit

nieurig 9. Mär 2005 06:58

Re: Einfrieren vor Connection-TimeOut verhindern
 
Guten Morgen!

Klar, Du kannst den Aufbau einer Verbindung zur DB in einem eigenen Thread starten der parallel zum Hauptprozess ausgeführt wird. Die Wartezeit bemerkt der User nicht,
... aber vermutlich wird Dein Programm nicht wissen, was es ohne Kontakt zur Datenbank eigentlich tun soll :wink:

Niels

Gambit 9. Mär 2005 07:51

Re: Einfrieren vor Connection-TimeOut verhindern
 
Zitat:

Zitat von nieurig
Guten Morgen!

Klar, Du kannst den Aufbau einer Verbindung zur DB in einem eigenen Thread starten der parallel zum Hauptprozess ausgeführt wird. Die Wartezeit bemerkt der User nicht,

Ja, das habe ich mir jetzt auch schon so überlegt...

Zitat:

Zitat von nieurig
... aber vermutlich wird Dein Programm nicht wissen, was es ohne Kontakt zur Datenbank eigentlich tun soll :wink:

Das verstehe ich jetzt nicht, wie meinst du denn das?
Es geht mir darum, dem User anzuzeigen, dass irgendwas passiert(der SQL-Maus-Curser reicht mir da nicht). Ich starte daher eine kleine Form auf der ein animiertes GIF liegt. Das bewegt sich nur nat. nicht, während die Verbindung zum Server aufgebaut wird. Und bei einem Connection TimeOut, bspw. wenn der Server hängt, schon gar nicht. Da soll der User nicht denken, sein Client-Programm sei abgestürtzt....

Gruß

Gambit

nieurig 9. Mär 2005 12:24

Re: Einfrieren vor Connection-TimeOut verhindern
 
Gut dafür reicht ein Thread aus.

Ich dachte mehr daran, dass man den Verbindungsaufbau ja nicht sehr lange "verstecken" kann, denn spätestens wenn die ersten Daten aus der Datenbank gebraucht werden MUSS der User warten.

Viel Erfolg
Niels

Gambit 9. Mär 2005 12:31

Re: Einfrieren vor Connection-TimeOut verhindern
 
Hmm, das Ganze funzt sowieso nicht so ohne weiteres. Ich baue ja zunächst die Verbindung auf und will dann irgendwas aus der DB lesen. Läuft der Verbindungsaufbau in einem Thread dürfte ja in der Zeit - wie du schon meintest - die Anwendung nicht auf die Datenbank versuchen zuzugreifen. Aber wie kann ich das verhindern? Mache ich ne Schleife bis, was weiß ich, ein Errorcode zurückkommt, passiert mit meinem GIF auch wieder nix. Und ich wollte ja nur den Verbindungsaufbau in einem Thread machen...


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:46 Uhr.

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