Schlagartig erhöhte Stackgröße nach Zwischenspeicherung

Startseite Foren Deutsches LiveCode-Forum Schlagartig erhöhte Stackgröße nach Zwischenspeicherung

Ansicht von 11 Antwort-Themen
  • Autor
    Beiträge
    • #22961
      Peter_M
      Teilnehmer

      Hallo Forum,
      aufgrund leidvoller Erfahrungen mit Datenverlust speichere ich meine Stacks zwischendurch nach jeder gemachten Änderung regelmäßig als Backup. Leider gibt es auch dabei ein nerviges und für mich unerklärliches Problem: des Öfteren ist der Platzbedarf des Stacks nach der Sicherung unverhältnismäßig viel größer(z.B. um 300000 Bytes), obwohl ich ihn nur mit kleinsten aktuellen Änderungen abgespeichert habe. Kann mir jemand dieses Rätsel lösen und/oder hat eine Idee, wie das Problem zu behandeln ist?
      Gruß an alle
      Peter

    • #22963
      Klaus Major
      Verwalter

      Hallo Peter,

      hm, habe ich noch nie erlebt, daher kann ich auch nichts dazu sagen.

      Gruß

      Klaus

    • #22967
      matthiasr
      Teilnehmer

      Das kann ich auch so nicht bestätigen. Du schreibst um 300000 Bytes, da sind ja ca. 290KB.

      Erhöht sich der betroffene Stack dann immer wieder um diesen Wert?

      Was meinst Du mit kleinsten aktuellen Änderungen? Änderungen am Skript oder was?

      Matthias

    • #22979
      Peter_M
      Teilnehmer

      Hallo Matthias,
      das passiert scheinbar ohne Regel in ca. 5 % der Fälle, wenn ich im Script Änderungen vorgenommen habe, und zwar sowohl bei kleineren Änderungen wie beispielsweise dem Umbenennen eines Labels oder auch bei größeren Änderungen. Ich helfe mir so, dass ich mir von meinem Stack zusätzlich ein Backup anlege, bevor ich diesen wieder speichere. Ab und an sehe ich dann nach dem Abspeichern, dass der Stack unverhältnismäßig an Größe zugenommen hat. Dann schließe ich LIVECODE, spiele mir das Backup zurück und öffne Livecode erneut, um die zuletzt vorgenommenen Änderungen nochmals einzugeben. Wenn ich den Stack dann wieder abspeichere, behält er seine normale Größe….. 🙁
      Gruß
      Peter

    • #22980
      Axwald
      Teilnehmer

      Hallo,
      lädst/ erzeugst Du vielleicht irgendwelche Daten in der Größe & schiebst die in eine customProperty oder ein Feld?
      Ansonsten schau halt mal mit einem TextEditor in den Stack, da solltest Du schnell sehen, was das ist.

      Viel Spaß!

    • #23018
      Peter_M
      Teilnehmer

      Hallo Axwald,
      vielen Dank für den Tipp,den ich gleich ausprobieren werde. Da mein Programm Bilddateien lädt, dürfte das der richtige Ansatz sein! Ich müsste die entsprechenden Bilddaten enthaltenden Properties dann vor dem Speichern des Stacks auf empty setzen!?
      An dieser Stelle muss ich von Visual Basic umdenken….
      Viele Grüße
      Peter

    • #23019
      Klaus Major
      Verwalter

      Kannst Du die Bilder nicht referenzieren?
      Das hat kaum Overhead bez. Dateigröße des Stacks.

    • #23113
      Peter_M
      Teilnehmer

      Hallo Axwald,
      dein Tipp war goldrichtig. Ich glaube, ich habe jetzt erst verstanden, was eine Custom Property ist! Vielen Dank noch einmal!
      LG
      Peter

    • #23115
      Peter_M
      Teilnehmer

      Hallo Klaus,
      vielen Dank für deine Anregung. Leider muss ich mich outen, dass ich nicht weiß, wie das Referenzieren programmtechnisch vollzogen wird. Kannst du mir ein Beispiel geben?
      Gruß
      Peter

    • #23116
      Klaus Major
      Verwalter

      Das bedeutet einfach nur, daß man „the filename of img xyz“ auf eine gültige „Adresse“ (Pfad) eines Bildes setzt.

      ...
      set the filename of img "ein Bild, ne?" to (spcecialfolderpath("documents") & "/ein tolles bild.jpg")
      ...

      Wie genau geht das denn bei Dir vor sich: „Da mein Programm Bilddateien lädt,…“.
      Danach richtet es sich, wie Du weiter vorgehen solltest.

    • #23183
      Peter_M
      Teilnehmer

      Hallo Klaus,
      ich arbeite bisher teilweise auch wie von dir beschrieben „referenziert“, parallel dazu aber auch noch ganz archaisch mit dem put – Befehl z.B.
      put url"http://Dateipfad/meine Bilddatei" into IMG"meinBild"
      Gruß
      Peter

    • #23201
      Klaus Major
      Verwalter

      Ach so, Du kannst aber auch:

      ...
      set the filename of img "Dein Bild" to "http://Dateipfad/meine Bilddatei"
      ## Dauert dann natürlich jedes Mal (Programmstart), bis alle Bilder wieder geladen sind.
      ...
Ansicht von 11 Antwort-Themen
  • Du musst angemeldet sein, um auf dieses Thema antworten zu können.