Seite 1 von 1

freeimage() ?

Verfasst: 29.10.2005 11:01
von sen-me
sollte man das anwenden?

wenn ja, auch wenns per includebinary geladen wurde?

Verfasst: 29.10.2005 11:53
von DataMiner
"Sauberer" wäre es den Speicher wieder freizugeben.
Schaue dir einfach mal den Speicherverbrauch deiner Anwendung mit und ohne freeimage() an und entscheide dann selbst.

Verfasst: 29.10.2005 16:46
von sen-me
wenn sauber wärden würde dann müsste man vor allem noch freegadget closewindow freetoolbar und sowas schreiben :roll:

also würd ich sagen nur bei bildern/sound/musik/datein speicher freigeben?

Verfasst: 29.10.2005 17:04
von ts-soft
sen-me hat geschrieben:wenn sauber wärden würde dann müsste man vor allem noch freegadget closewindow freetoolbar und sowas schreiben :roll:

also würd ich sagen nur bei bildern/sound/musik/datein speicher freigeben?
PureBasic Gadgets, Images usw. werden am Programmende autom. freigegeben (Ich hoffe :wink: ), wenn Du jedoch eine Speicher oder eine Image nicht mehr benötigst, solltest Du dies auch freigeben, damit dies nicht unnötig im RAM rumlungert. Per API erzeugte Resourcen mußte oft selber freigeben, da Purebasic diese nicht autom. freigibt (jedoch manchmal erledigt auch Windows dies autom. wenn das Fenster geschlossen wird).

Verfasst: 29.10.2005 17:56
von Kaeru Gaman
bei includebinary stehts ja im grunde 2x im speicher...
einmal im anhang deines programms, und einmal dort, wo dus von dort hinlädtst...

ich finde es durchaus praktisch, nicht mehr benutzten speicher wieder freizugeben...

mir ist das oft passiert, das 'professionelle' games das nicht machen,
da lungern manchmal noch die vorherigen level im speicher rum,
der speicherverbrauch steigt stetig an,
und irgendwann muss man rebooten und das aktuelle spiel nochmal laden,
um wieder anständig spielen zu können.


> vor allem noch freegadget closewindow freetoolbar und sowas

wenn du z.b. für nen neuen level/ein neues projekt ein neues fenster aufmachst,
weil du das eben machst am anfang eines levels, und vergißt, das alte sauber zu clearen,
könnte das auch son resourcen-fresser werden...

ich bin mir nicht sicher, ob durch ein closewindow sämtliche benutzen bestandteile
automatisch freigegeben werden, ich würds sicherheitshalber explizit machen.