Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

dx11

unregistriert

1

09.07.2011, 14:39

Speicher Leaks

Hallo
Mal eine Frage.
Wenn ich zb mit DirectX ein Objekt erstelle und lade, aber es nicht wieder lösche kommt ja nur eine Fehlermeldung. Aber was passiert sonst noch, weil eigentlich wird der Arbeitsspeicher ja gelöscht, wenn man den Computer herunterfährt!
MFG

Oberon

Treue Seele

Beiträge: 181

Wohnort: Österreich

Beruf: Student

  • Private Nachricht senden

2

09.07.2011, 14:44

Erstens ist es einfach schlechter Stil und zweitens wächst der Speicherbedarf deines Programms bis zu bad_alloc immer weiter an, wenn du das Leck in einer Schleife hast.
Ansonsten hast du aber recht: Beim Beenden des Programms bzw. beim Herunterfahren wird der Speicher wieder freigegeben.

MCP

Alter Hase

Beiträge: 513

Wohnort: Paderborn

Beruf: Software-Entwickler

  • Private Nachricht senden

3

09.07.2011, 14:58

Werden COM Objekte nicht Systemweit referenziert? Wenn Du eines erzeugst, dann wird doch ein Objekt Zähler fürs ganze System hochgezählt. Gibst Du es nicht wieder frei, dann bleibt es doch auch noch im Speicher, wenn Dein Programm beendet ist, oder nicht?
Ansonsten ja, beim Herunterfahren wird der ganze Speicher frei gemacht (am Sichersten, wenn man den Computer vom Netz trennt).
Die Frage klingt irgendwie so nach "So schlimm ist das doch eigentlich nicht!". Das gefällt mir nicht. Man sollte auch bei 4 und 8 GB Ram nicht mehr verschwenden als unbedingt nötig.
An der Arbeit habe ich nur 2GB und da ist es extrem nervig wenn kleine Programme viel Speicher verschwenden. Meist sind 1,7 GB belegt, das heißt die Auslagerungsdatei wird intensiv genutzt und das ganze System ausgebremst.

dx11

unregistriert

4

09.07.2011, 15:47

Zitat: Die Frage klingt irgendwie so nach "So schlimm ist das doch eigentlich nicht!"
Ich weis das hat sich so angehört allerdings wollte ich nur mal fragen ob das wirklich schlimm ist!
Ich will ja nicht das bei einem Benutzer der mein Programm hat Unnötigen Speicher belegen!
Danke :D

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

5

09.07.2011, 15:55

Ja, das ist wirklich so schlimm und das sollte man sich unter gar keinen Umständen angewöhnen.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

dx11

unregistriert

6

09.07.2011, 16:56

Wie gesagt ich wollte nur Fragen :D
Kein schrott programm machen! :D

Werbeanzeige