![]() |
Unnötige Ini-Befehle vermeiden sinnvoll?
Im Zuge dessen, dass ich mir die Tage eine eigene Ini-Klasse angelegt habe mit ein paar Änderungen drin stelle ich mir jetzt eine Frage:
wie sinnvoll ist es, unnötige Befehle zu vermeiden? Konkreter: Wenn ich ein TMemIniFile verwende mir AutoSave := False, sollte man dann die Writes irgendwie blockieren? Ich meine... der schreibt dann irgendetwas in den Speicher, was am Ende eh kein Mensch braucht. Meine Unit kann man hier sehen: ![]() In etwa sowas hier
Delphi-Quellcode:
Was ist von soetwas zu halten?
procedure WriteString(const Section, Ident, Value: string); reintroduce; overload;
procedure WriteInteger(const Section, Ident: string; Value: Integer); reintroduce; overload; procedure WriteBool(const Section, Ident: string; Value: Boolean); reintroduce; overload; ////////////////////////////////////////// procedure TMemIniFile.WriteString(const Section, Ident, Value: string); begin if FAutoSave then inherited WriteString(Section, Ident, Value); end; procedure TMemIniFile.WriteInteger(const Section, Ident: string; Value: Integer); begin if FAutoSave then inherited WriteString(Section, Ident, IntToStr(Value)); end; procedure TMemIniFile.WriteBool(const Section, Ident: string; Value: Boolean); const Values: array [Boolean] of string = ('0', '1'); begin if FAutoSave then inherited WriteString(Section, Ident, Values[Value]); end; |
AW: Unnötige Ini-Befehle vermeiden sinnvoll?
Zitat:
Immerhin kann man das Ganze auch am Ende immernoch per Update in die Datei schreiben lassen. |
AW: Unnötige Ini-Befehle vermeiden sinnvoll?
Stimmt ist mein Fehler, muss ich umbenennen.
Aber der Sinn dahinter ist ja, dass nur lesender Zugriff stattfinden darf und kein schreibender :stupid: Ausgangsfrage ist aber: wie sinnvoll ist es unnötige Writes zu blockieren, wenn die Datei am Ende doch eh nicht geschrieben wird? |
AW: Unnötige Ini-Befehle vermeiden sinnvoll?
Zitat:
|
AW: Unnötige Ini-Befehle vermeiden sinnvoll?
Zitat:
|
AW: Unnötige Ini-Befehle vermeiden sinnvoll?
Zitat:
Zitat:
Delphi-Quellcode:
if {not readonly} then StoreDatatoIni(Inifile);
|
AW: Unnötige Ini-Befehle vermeiden sinnvoll?
Zitat:
Da kann ich doch nur mit einer Gegenfrage antworten..:twisted: Wie sinnvoll ist so eine Ini dann überhaupt ? Ich geh mal davon aus, das du Programmeinstellungen speicherst. Wenn die nicht in irgendeiner Form auf der Platte landen, ärgerst du den Anwender, der jedesmal die Einstellungen neu machen darf. Oder hab ich da was verpasst ? Wenn du nur temporäre Daten in ein File speichern willst, würd ich nicht grad Inis nutzen :) |
AW: Unnötige Ini-Befehle vermeiden sinnvoll?
@Fritz: korrekt.
@a.def: Gemeint ist, du lädst die Datei und hältst die Daten in deiner Komponente. Jedes write ändert die Daten, ohne in der Datei zu speichern. Ein Read greift dann auf die Daten im Speicher zu und erhält dann die Angaben durch das letzte Write. So könntest du die Ini-Daten praktisch temporär ändern und nutzen |
AW: Unnötige Ini-Befehle vermeiden sinnvoll?
Zitat:
Zitat:
Ich meinem Aberglauben dachte ich nur, ich könnte so ein paar unnötige Speicheroperationen auslassen :roll: |
AW: Unnötige Ini-Befehle vermeiden sinnvoll?
Ok...auf das Prob bin ich bisher nicht gestoßen, da ich mir via Api die enstprechenden Userverzeichnisse hole :)
Aber für den genannten Fall (oder vielleicht gibts ja durchaus noch andere Fälle wo sowas nützlich wäre), macht das schon Sinn, vor dem Write das ganze entsprechend Abzufragen, auch wenns nur in den Speicher geht. Bei enstprechenden Anwendungen (z.B. Video-Bearbeitungen), kann ja auf einem PC auch der Speicher mal eng werden. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:08 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