![]() |
AW: RTTI Attribute verändern
Ja, ich war mir auch sicher, daß die RTTI (an vielen Stellen) ein Singleton verwenden und die Daten daher nur einmal vorkommen.
Darum hatte ich auch schon Probleme, wenn man die neue RTTI in Threads verwendet. Aber, wie du am code siehst, hab ich das Create/Destroy des Attributes quasi geloggt und genau da erkennt man, daß es zwei Mal erstellt wird und nach dem "End" auch zwei Mal freigegeben. Außerdem ist beim letzen Auslesen der zugewiesene Wert weg (ist ja auch die zeite instanz). |
AW: RTTI Attribute verändern
Zitat:
|
AW: RTTI Attribute verändern
Aber XE(1) sollte doch XE(1) sein? :gruebel:
|
AW: RTTI Attribute verändern
Liste der Anhänge anzeigen (Anzahl: 1)
Sehr eigenartig.
Ich hab das jetzt nochmal in einer einzelnen Anwendung getestet und hier im XE3 gibt es nur eine Instanz. :gruebel: |
AW: RTTI Attribute verändern
Zitat:
Dann kann das nur an irgendeiner Compileroption liegen, durch die bei der erneuten Zuweisung des Contexts zuerst die Variable gecleared (und somit die TRttiPool Instanz freigegeben) und dann erst das Create aufgerufen wird. Wenn du das herausfinden willst debug halt mal mit debug dcus in Zeile 151. |
AW: RTTI Attribute verändern
Zitat:
Das Context-Interface in der Variable sollte ja erst freigegeben werden, bevor das Andere dort rein kommt. :gruebel: Nja, massig Debuginfos, Eurekalog usw.. Da könnte es sich eventuell doch etwas am Verhalten ändern. |
AW: RTTI Attribute verändern
Zitat:
Code:
Unit16.pas.151: Rtti := TRttiContext.Create;
004EA99C 8D8514FFFFFF lea eax,[ebp-$000000ec] 004EA9A2 E8A197FDFF call TRttiContext.Create 004EA9A7 8D9514FFFFFF lea edx,[ebp-$000000ec] 004EA9AD 8D45F8 lea eax,[ebp-$08] 004EA9B0 8B0D90754B00 mov ecx,[$004b7590] 004EA9B6 E8B5D5F1FF call @CopyRecord |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:22 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