Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Weak References für Delphi Desktop Compiler? (https://www.delphipraxis.net/176352-weak-references-fuer-delphi-desktop-compiler.html)

Der schöne Günther 29. Aug 2013 11:05

Delphi-Version: XE2

Weak References für Delphi Desktop Compiler?
 
Ich setze mich diese Tage nun endlich darn, Interfaces in Delphi zu verstehen. Ich habe das Gefühl, die automatische Referenzzählung wird all meine Probleme auf wundersame Art und Weise lösen.

Nun folgendes: Voller begeisterung lese ich von Weak References die nicht zum Referenzzähler beitragen. Das Beispiel erinnert übrigens frappierend an unser kürzliches Abenteuer mit zirkular referenzierten und gestohlenen Hunden. Obwohl der Compiler nicht meckert, wenn ich ein Feld mit
Delphi-Quellcode:
[weak]
bzw.
Delphi-Quellcode:
[WeakAttribute]
"tagge", ist die Referenz leider so gar nicht schwach: Sie trägt weiterhin zur Referenzzählung bei. Nicht weiter überraschend, denn die Doku sagt ja auch ausdrücklich
Zitat:

[...] use the [weak] attribute, supported by the Delphi mobile compilers.

Hat jemand auf die Schnelle einen Tipp, wo man ansetzen müsste, um es auf dem "CurrentGen"-Compiler zu erreichen? Außer vielleicht die Referenz schlichtweg als
Delphi-Quellcode:
Pointer
zu deklarieren?

Oder weiß man, ob man auch auf dem Win32-Desktop in absehbarer Zeit in den Genuss von
Delphi-Quellcode:
[weak]
kommen wird?


Übrigens: Ein toller Beitrag von Allen Bauer zum Thema ARC von vor ein paar Wochen. Mit reichlich Diskussion. Über dem werde ich das Wochenende hängen :thumb:

Uwe Raabe 29. Aug 2013 11:24

AW: Weak References für Delphi Desktop Compiler?
 
Auf eine [weak]-Unterstützung in Win32 werden wir wohl noch eine Weile warten müssen.

Da bleibt eigentlich nur der Trick mit dem Pointer, wie man im Controller-Property von TAggregatedObject gut sehen kann.

mkinzler 29. Aug 2013 11:26

AW: Weak References für Delphi Desktop Compiler?
 
Es geht hier um den "nextgen" Compiler, er auf LLVM basiert. Dieser kommt bisher nur beim ARM-Compiler zum Einsatz.

Der schöne Günther 29. Aug 2013 11:34

AW: Weak References für Delphi Desktop Compiler?
 
Zitat:

Zitat von Uwe Raabe (Beitrag 1226603)
TAggregatedObject

Alles klar, dann ist das wohl der bislang vorgesehene Weg. Die Klasse kannte ich bislang auch nicht, danke dafür :-)

Bernhard Geyer 27. Jul 2017 15:46

AW: Weak References für Delphi Desktop Compiler?
 
Zitat:

Zitat von Uwe Raabe (Beitrag 1226603)
Auf eine [weak]-Unterstützung in Win32 werden wir wohl noch eine Weile warten müssen.

Waren doch nur 3 Jahre: http://blog.marcocantu.com/blog/2016...eferences.html

Uwe Raabe 27. Jul 2017 16:00

AW: Weak References für Delphi Desktop Compiler?
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1377635)
Zitat:

Zitat von Uwe Raabe (Beitrag 1226603)
Auf eine [weak]-Unterstützung in Win32 werden wir wohl noch eine Weile warten müssen.

Waren doch nur 3 Jahre: http://blog.marcocantu.com/blog/2016...eferences.html

Ja, man soll die Hoffnung nie aufgeben.


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