AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Fehlertoleranz DELPHI Compiler

Ein Thema von bernhard_LA · begonnen am 27. Nov 2012 · letzter Beitrag vom 28. Nov 2012
Antwort Antwort
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.352 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: Fehlertoleranz DELPHI Compiler

  Alt 28. Nov 2012, 14:55
Vielleicht können wir uns darauf einigen, dass es um vergessene Referenzen auf aufgelöste Objekt(speicherplätz)e geht.
Solche Zugriffe sollten sowohl von der BL als auch von der GUI vermieden werden.

Dennoch kann es vorkommen, insbesondere bei der Entwicklung eines komplexen Projektes. Man braucht ja nur den Owner aufzulösen und vergisst, dass das Objekt diesem zugeordnet ist.

Schön wäre es, wenn alle Referenzen auf ein Objekt bei dessen Auflösung automatisch genilt würden, aber das wird auch in Zukunft nicht realisierbar sein. Mit Assign(Referenz) könnte man immer auf die Existenz des Objektes prüfen.

Die Objektreferenz noch am Leben zu erhalten und damit auf fragwürdige Daten zuzugreifen finde ich eigentlich nicht optimal. Es hat eben Vor- und Nachteile. Sofern man mit den Daten nix weiter anstellt, ist das für das Projekt nicht weiter schädlich. Wenn die Existenz des Objektes aber mein übriges Projekt beeinflusst, dann ist das natürlich schlecht.

Also sollte man ein Objekt vor dem Auflösen "disablen", so können vergessene Referenzen erkennen, dass das Objekt, auf welches sie zeigen eigentlich nicht mehr da ist.

Ein prakisches Beispiel ist Windows: Führt man in einem Control ein Schließen seines ParentForms durch, erhält dieses Control evtl. zuvor noch den Focus. Winndows will das Control kurz darauf schön focussiert zeichnen.
Form und Control sind nicht mehr da - es knallt. (Das hängt wohl tatsächlich mit den Handels zusammen, ist aber ein anschauliches Beispiel.)
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.342 Beiträge
 
Delphi 12 Athens
 
#2

AW: Fehlertoleranz DELPHI Compiler

  Alt 28. Nov 2012, 15:10
Ab TComponent könnte man aber schon seit Jahrzehnten Listen erstellen (hat nur noch keiner gemacht), wo die Referenzen automatisch entfernt werden, wenn jemand Anderes (z.B. der Owner) das Objekt freigibt.

Also ab TComponent ist dieses Feature drin, wenn man es nicht selber implementieren will. Dieses wird z.B. für die ganzen (Kreuz)Verlinkungen ala Parent-Child und Owner-Owned verwendet.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:15 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