AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Suchfunktion Ergebnis der Suchanfrage

Ergebnis der Suchanfrage


Datum des Suchindex: Heute, 20:47

Parameter dieser Suchanfrage:

Suche in Thema: Verständnisfrage: TJSONObject create/free/destroy?
Suche alle Beiträge, die von "SearchBot" geschrieben wurden
• Suchmethode: "Suche nach allen Begriffen"
• Nach Datum (firstpost) sortiert
• Zeige Treffer als Beiträge
Zeige 10 von insges. 10 Treffern
Suche benötigte 0.000s

Es liegen Ergebnisse in folgenden Bereichen vor:

  • Forum: Programmieren allgemein

    AW: Verständnisfrage: TJSONObject create/free/destroy?

      Delphi
      by SearchBot, 29. Jul 2022
    Okay :thumb:

    Ich habe also eure Anregungen im Quelltext beachtet und so ein paar Macken beheben können, Leaken tut es am Ende immernoch, aber es führt nicht zum Absturz des Programms.

    Wenn sich das TJSONzeugs innen also selbst aufräumt, kann ich als Unwissender kaum etwas dagegen machen, wenn es dann trotzdem leakt. :wink:
    Ich gebe also nur das Objekt free, das ich zu Beginn create habe....
  • Forum: Programmieren allgemein

    AW: Verständnisfrage: TJSONObject create/free/destroy?

      Delphi
      by SearchBot, 28. Jul 2022
    Okay, Entschuldigung.
    Ich meinte mit "blöd", daß dieser Typ für mich neue Schwierigkeiten verursacht, einfach ausgedrückt.

    Für alle anderen und jedes neue Projekt ist es bestimmt ein sehr hilfreicher und zukunftsorientierter Zeichenketten-Typ.
  • Forum: Programmieren allgemein

    AW: Verständnisfrage: TJSONObject create/free/destroy?

      Delphi
      by SearchBot, 28. Jul 2022
    Ja, da hast du recht, mein Code ist schon ein wenig hingeschmiert :oops:

    Ich habe es schon fast vergessen gehabt, daß da noch was war mit... - wenn man ältere Quelltexte verwendet und Delphi zwischenzeitlich "String" als UnicodeString versteht, ich aber weiterhin in AnsiString denke.

    Also habe ich im alten Code nun alles, was Char und String hieß, spezifiziert (char -> AnsiChar; String ->...
  • Forum: Programmieren allgemein

    AW: Verständnisfrage: TJSONObject create/free/destroy?

      Delphi
      by SearchBot, 28. Jul 2022
    Vielen Dank für den Hinweis. Hab das häufiger im Quelltext falsch gemacht und jetzt korrigiert.

    Aber es ändert nichts am Verhalten vom FastMM -
    Es wirft mir eine Exception - Zugriffverletzung bei Adresse... und wenn ich dort schaue, mitten im CPU-Fenster ist es in "@UStrAsg" :gruebel: Weiß nicht, was das ist... irgendwas mit UniCodeString in der Nähe - "Lesen von Adresse 8B2E2583".
    ...
  • Forum: Programmieren allgemein

    AW: Verständnisfrage: TJSONObject create/free/destroy?

      Delphi
      by SearchBot, 27. Jul 2022
    Das TJSONgedöns hat mir irgendwie zuviel nicht nachvollziehbares Eigenleben.
    Ich hab jetzt alle Freigaben und das Owned entfernt und gebe ganz zum Schluss nur das json.free

    Jetzt schaue ich mir an, was FastMM dazu entdeckt, wie mir Himitsu empfohlen hat.

    Und je, irgendwie ist das mit dem TJSONObject trotzdem nicht gut :roll: - ich habe die Funktion damit nur 1x aufgerufen und Auszug:
    13 -...
  • Forum: Programmieren allgemein

    AW: Verständnisfrage: TJSONObject create/free/destroy?

      Delphi
      by SearchBot, 27. Jul 2022
    Ich habe mir jetzt das FastMM vom Github geholt und eingebaut.
    Und damit auch schon ein MemLeak behoben in einer Komponente (PageExtControl, die ich sehr gerne verwende (da wurde TTabColors im destroy nicht wieder freigegeben, aber das nur nebenbei)).

    Mit FastMM habe ich jetzt aber ein ganz neues unerklärliches Problem :pale:
    procedure OpenGrid(var...
  • Forum: Programmieren allgemein

    AW: Verständnisfrage: TJSONObject create/free/destroy?

      Delphi
      by SearchBot, 26. Jul 2022
    Hab das TJSONArray nicht auf owned gesetzt.

    @Himitsu: :oops: so tief will ich garnicht reingehen, aber trotzdem danke für diesen Tiefenblick.

    Was wird eigentlich alles freigegeben, wenn die procedure zu Ende ist, in der ich die TJSON-Objekte erzeuge?
    Wie kann ich messen, ob ich innerhalb einer procedure ein Speicherleck habe (ich habe bisher nur den Taskmanager beobachtet, wie sich der...
  • Forum: Programmieren allgemein

    AW: Verständnisfrage: TJSONObject create/free/destroy?

      Delphi
      by SearchBot, 26. Jul 2022
    Aah, deshalb muss ich auch diese inline generierten Dinge nicht extra freigeben (zb das TJSONBool-Objekt in json.AddPair(prop, TJSONBool.Create(cv='true')); ). Das ist praktisch.

    Und wenn ich also Owned=false setze, gebe ich es (wie für mich normal und nachvollziehbar) am Ende erst frei.
    Schön, es knallt nicht mehr. :thumb:

    Als Folge von Owned=false löst jetzt aber die Wertübergabe...
  • Forum: Programmieren allgemein

    AW: Verständnisfrage: TJSONObject create/free/destroy?

      Delphi
      by SearchBot, 26. Jul 2022
    Dankeschön :thumb:

    Aber warum schreibt dann die blöde Hilfe so widersprüchliches Zeugs??
    Bei TJSONObject.create heißt es, mit .Destroy sei es aufzuräumen. Zudem ist .Free im Hilfe-Index garnicht aufgelistet.
    Bei TJSONObject.AddPair hat ein Beispiel, das das JSON-Objekt mit .Free aufräumt.
    :wiejetzt:

    Wäre ergänzend FreeAndNil sinnvoll?

    Und wie kann ich das ahnen, daß das TJSONArray...
  • Forum: Programmieren allgemein

    Verständnisfrage: TJSONObject create/free/destroy?

      Delphi
      by SearchBot, 26. Jul 2022
    Ich habe irgendwie eine Wissenslücke oder denke falsch.
    Leider hilft auch nicht "RTFM" :wall:
    Bisher nahm ich an, daß Objekte, die ich in einer Methode create auch brav wieder freigebe (zB TStringList).

    Bei Beispielen mit TJSONObject scheint aber manches anders zu laufen - was mich sehr verwirrt und der Code bei Ausführung entweder knallt oder Windows mein Programm freundlicherweise ohne...


URL zu dieser Suchanfrage:

https://www.delphipraxis.net/dp_search.php?do=usersearch&search_username=SearchBot&search_exact_username=1&search_sortby=dateline&search_resulttype=post&search_matchmode=0&searchthreadid=211087
Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:06 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