Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi Memory Leak in TTetheringManager! (https://www.delphipraxis.net/183205-memory-leak-ttetheringmanager.html)

Mavarik 19. Dez 2014 12:52

Memory Leak in TTetheringManager!
 
Hallo Zusammen...

Falls Ihr es noch nicht gefunden habt...

Im TTetheringManager gibt es ein MemoryLeak (bis XE7)

Es fehlt ein
Delphi-Quellcode:
FTempPasswords.Free;
im destructor.

Mavarik

Mavarik 19. Dez 2014 15:51

AW: Memory Leak in TTetheringManager!
 
Liste der Anhänge anzeigen (Anzahl: 1)
Oje, noch viel mehr!

Siehe Screen...

Mavarik

Sir Rufo 19. Dez 2014 16:22

AW: Memory Leak in TTetheringManager!
 
Ja, mit dem Freigeben von Instanzen haben die es nicht so ... ist doch alles ARC ... wohl demnächst ... irgendwann ... und dann ist das Problem doch gelöst. Also einfach aussitzen, dann wird es schon.

Ein BugReport ohne die konkreten Fehlerstellen nützt nichts, der wird noch nichtmal übernommen.

Stevie 19. Dez 2014 16:47

AW: Memory Leak in TTetheringManager!
 
Der Fehler mit den FTempPasswords ist bekannt:

http://qc.embarcadero.com/wc/qcmain.aspx?d=129010
http://qc.embarcadero.com/wc/qcmain.aspx?d=127844

und noch einer:

http://qc.embarcadero.com/wc/qcmain.aspx?d=127946

Zitat:

Zitat von Sir Rufo (Beitrag 1284136)
ist doch alles ARC ... wohl demnächst ... irgendwann ... und dann ist das Problem doch gelöst.

Oh Gott, bitte nicht... ich möchte, dass meine Anwendungen auch weiter funktionieren und nicht überall DisposeOf oder DisposeOfAndNil (:mrgreen:) verteilen müssen, weils sonst an allen Ecken und Enden kracht.

Mavarik 19. Dez 2014 17:46

AW: Memory Leak in TTetheringManager!
 
Zitat:

Zitat von Stevie (Beitrag 1284139)
Oh Gott, bitte nicht... ich möchte, dass meine Anwendungen auch weiter funktionieren und nicht überall DisposeOf oder DisposeOfAndNil (:mrgreen:) verteilen müssen, weils sonst an allen Ecken und Enden kracht.

Oh wie gruselig...

Daher:

Delphi-Quellcode:
Procedure ArcFree(Var Obj);
{$IF not Defined(AUTOREFCOUNT)}
var
  Temp: TObject;
begin
  Temp := TObject(Obj);
  Pointer(Obj) := nil;
  Temp.Free;
end;
{$ELSE}
begin
  if Pointer(Obj) <> NIL then
    begin
      TFMXObject(Obj).Release;
      TFMXObject(Obj).DisposeOf;
    end;

  TObject(Obj) := nil;
end;
{$ENDIF}
:stupid:

Stevie 19. Dez 2014 19:56

AW: Memory Leak in TTetheringManager!
 
Das ist aber mehr ARGH als ARC :stupid:

Mavarik 20. Dez 2014 10:16

AW: Memory Leak in TTetheringManager!
 
Zitat:

Zitat von Stevie (Beitrag 1284150)
Das ist aber mehr ARGH als ARC :stupid:

Mag sein... Aber ich war es einfach leid das Objecte und Fenster nicht verschwunden sind, weil irgend eine System Routinen noch einen Bezug hatte...

Wenn ich sehe, das ein Fenster nach einem einfachen Show schon RefCount >2 hat.. Ist logisch warum es NIE zugehen wollte.
Irgendwann hatte ich die Nase voll vom Kernel-Debugging...

Naja und die [WEAK] Geschichte ist da auch nicht besser. Du denkst Du bis der letzte und schwub bekommst Du eine Exception, weil das Ding schon weg ist. Vielleicht einfach nicht mein Ding...:stupid:

Mavarik


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:47 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