_GDIPlus_***Dispose

  • Hab da mal eine kurze simple Frage:
    Reicht es zb. einmal am ende des Scriptes _GDIPlus_****Dispose($hVariable) aufzurufen, oder muss diese nach jeden Wechsel die Funktion aufgerufen werden?

    Beispiel A:

    AutoIt
    $hBrush = _GDIPlus_LineBrushCreate(0, 0, 280, 500, 0xFFFF0000, 0xFF4020FF, 1)
    ; ... Ganz viel Code
    $hBrush = _GDIPlus_LineBrushCreate(0, 0, 200, 500, 0xFF000000, 0xFF0020FF, 1)
    ; ... Ganz viel Code
    $hBrush = _GDIPlus_LineBrushCreate(0, 0, 277, 500, 0xFF00FF00, 0xFF0000FF, 1)
    ; ... Ganz viel Code
    
    
    _GDIPlus_BrushDispose($hBrush)


    Beispiel B:

  • Hi,

    An sich jedesmal, da du bei jedem Aufruf ein neues Brush-Objekt erzeugst. Gibst du es nicht wieder frei bleibt es im Speicher enthalten.

    ...so lange, bis das Script/Programm beendet wird, dann wird der Speicher wieder freigegeben!
    Problematisch wird es erst, wenn während der Programmnutzung durch Leaks/nicht freigegebene Objekte der Speicher vollläuft.