macht ihr auch manchmal memset(this,sizeof(*this),0xff)?



  • Manchmal wenn ich bei Kunden nach fiesen Fehlern suche z.B. Zugriffe über Pointer auf gelöschte Objekte, (Threade)Dtor-Reihenfolgen-Chaos usw. setze ich manchmal den kompletten Objekt-Speicher im Dtor mit memset(this,sizeof(*this),0xff) auf fiese Werte um erstmal schneller und definierter Explosionen in der Software zu erreichen - dann Grenze ich die Ursache weiter ein

    -es geht meist um sehr umfangreichen Code (mind 200-300KLoc+) wo die Abhängigkeitsanalyse im ersten Schritt nicht so einfach ist
    -wenn ich den ASan, Intel-Inspector oder Valgrind einsetzen kann nutze ich die
    -so lange der Speicher nicht anderweiteig verwendet wird werden Falsch-Zugriffe relativ schnell explodieren

    hab ihr auch solche Tricks oder was macht ihr in solchen Fällen - also neben einer anständigen Analyse usw.


  • Mod

    Valgrind?



  • -wenn ich den ASan, Intel-Inspector oder Valgrind einsetzen kann nutze ich die

    Wenn die Applikation gross und resourcenhungrig sind (also RAM und oder CPU) kann es z.B. sein das Valgrind und Intel-Inspector so stark verlangsamen das ein Arbeiten und Fehler provozieren nicht mehr möglich ist

    oder kein Linux-Built möglich wegen: dem Kunden, weil der Code Microsoft-Spezfikas benutzt, 3rd Party libs nicht Linux fähig sind, Hardware-Treiber nicht vorhanden, Komponenten-Extraktion für Tests schwierig, clang-cl nicht durchkompiliert und,und,und


Log in to reply