Tom: Wo werden Name und (Meta-)Daten der Variable verbunden?

Beitrag lesen

Hello,

Ich wollte sehen, was genau dann passiert, wenn ein absoluter Variablenname (also ein Name innerhalb desselben Scopes) das zweite Mal benutzt wird, um ihn mit einem zval zu verknüpfen.

Anzunehmenderweise wird der refcount im ZVAL-Container eins runtergezählt und die Variable dazu gebracht auf einen anderen ZVAL-Container zu zeigen, dessen refcount hochgezählt wird.

Das geschieht mMn nur dann, wenn die noch vorhandene Variable überschrieben wird.

Eine Variable ist nach meinem Verständnis ein Eintrag in einer der Variablenlisten mit einem Verweis auf einen ZVAL-Container.

Beides: genau! Aber ich möchte gerne die ungenaue Vorstellung gegen genaues Wissen tauschen.

Und da ist es dann entscheidend: Was geschieht genau, wenn der RefCount 0 wird? Wird dann SOFORT der Destruktor des Objektes aufgerufen, oder wird dies erst irgendwann beim Aufräumen gemacht?

Der Aufruf des Destruktors müsste stattfinden, _direkt_ _nachdem_ das neue Paar "Name -> zval-Container" erzeugt worden ist.

Liebe Grüße aus dem schönen Oberharz

Tom vom Berg

--
Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de
0 55

Datumrechnung

Simone
  • php
  1. 0
    EKKi
    1. 0
      Simone
      1. 0
        Christoph Jeschke
        1. 0
          Tom
          1. 0
            Christoph Jeschke
            1. 0
              Tom
            2. 0
              Simone
              1. 0
                Christoph Jeschke
                1. 0
                  Tom
                  1. 0
                    Christoph Jeschke
                    • menschelei
                    1. 0
                      Tom
                      1. 0
                        Christoph Jeschke
                        1. 0
                          Tom
                  2. 0
                    Sven Rautenberg
                    1. 0
                      Tom
                      1. 0
                        EKKi
                        • meinung
          2. 2

            Lebensdauer von {Datenbank-,File-,...}Handles in PHP

            Christian Seiler
            1. 0
              Tom
              1. 0
                Sven Rautenberg
                1. 0

                  Lebensdauer von {Datenbank-,File-,...} Handles in PHP

                  Tom
                  1. 0
                    EKKi
                    • meinung
                    1. 0
                      Tom
                2. 0
                  Edgar Ehritt
            2. 0
              Tom
              1. 0
                EKKi
                • meinung
                1. 0

                  Genau nachfragen ist hier verboten?

                  Tom
                  • zu diesem forum
                  1. 0
                    flowh
                    1. 0
                      Tom
                      1. 0
                        Edgar Ehritt
                        1. 0
                          Tom
              2. 8

                Interna von Variablen und Ressourcen, Lebensdauer, GC

                Christian Seiler
                1. 0
                  Tom
                2. 0

                  Wo werden Name und (Meta-)Daten der Variable verbunden?

                  Tom
                  1. 0
                    dedlfix
                    1. 0
                      Tom
                      1. 0
                        dedlfix
                        1. 0
                          Tom
                          1. 0
                            dedlfix
                            1. 0
                              Tom
                              1. 0
                                Christian Seiler
                  2. 0
                    Christian Seiler
                    1. 0
                      Christian Seiler
                      1. 0
                        Tom
                3. 0
                  Edgar Ehritt
                  • meinung
                  1. 0
                    Christian Seiler
                    1. 0

                      Interna von Variablen

                      Edgar Ehritt
                      • menschelei
                      1. 0
                        Christian Seiler
                    2. 0
                      Tom
                4. 0
                  Bademeister
                  1. 0
                    Christian Seiler
                    1. 0
                      Bademeister
                      1. 0
                        Christian Seiler
                    2. 0
                      Kai345
  2. 0
    Edgar Ehritt