![]() |
Re: Datamodule richtig Frei geben
Hallo René,
auch wenn du nur mit einem Datenmodul arbeiten würdest: Eine gewisse Wartezeit beim Beenden eines ADO-Client ist normal. Da mehrere Zugriffsschichten abgräumt werden kann sich unter ungünstigen Umständen (mehrere Clients, viele offene Cursor, viele geänderte Puffer, ...) einiges an Zeit aufsummieren. Eventuell kannst du diese Zeit durch Verbesserungen am Datenmodell und der Implementierung verringern, aber ganz weg geht das nie. Minimal ist der Zeitraum, wenn du nur einen Client startest und sofort wieder beendest. Woran das bei dir genau liegt, könntest du eventuell mit einem SQL-Monitor herausfinden. Freundliche Grüße |
Re: Datamodule richtig Frei geben
Hi marabu,
danke. Wie macht ihr das eigentlich mit den Connections? Ich habe pro Datenmodul 1-2 Connections ,das ist noch von anfang an und i weiß das das nciht optimal ist sogar eher das gegenteil bewirkt. I muss halt auf veschiedene Databases mit unterschiedlichen usern Connecten aber nur 1 Server. danke |
Re: Datamodule richtig Frei geben
Zitat:
Zitat:
Delphi-Quellcode:
Das gehört ins DatamoduleOnCreate des allgemeinen DMs. Die Datamodules werden dann von der IDE so in die DPR eingefügt :
DataBase.Close;
DataBase.DatabaseName := DatenBankName; // aus Ini oder von Hand setzen DataBase.Open; Transaction.Active := true;
Delphi-Quellcode:
Sie werden also NICHT dynamisch erzeugt. Irgendwelche Fehler sind bei dieser Vorgehensweise noch nie aufgetaucht. Die Forms außer der MainForm werden allerdings ALLE dynamisch erzeugt, um das OnCreate der Forms sinnvoll benutzen zu können. Die DMs extra von Hand zu erzeugen ist IMHO Unfug. Könnte allerdings eventuell die EXE tatsächlich um 383,2353 Byte verkleinern und 0,00003522 Sek. beim Programmstart einsparen. :mrgreen:
Application.CreateForm(TDM1, EingDM);
Application.CreateForm(TDM2, JMod); Application.CreateForm(TDM3, ShopDM); Application.CreateForm(TSpDM, SpMod); Application.CreateForm(TfrmMenue, frmMenue); // MainForm |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:19 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