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

Anonymous

unregistriert

1

13.08.2003, 00:51

Lebensdauer von Memory Leaks

Hallo!

Da ich bei dem ganzen Speichersachen nicht mehr so recht durchblicke, frage ich:

Wie lange (für die Dauer des Programms, bis zum nächsten Neustart des Systems, für immer) wirkt sich welches Speicherleck (alle möglichen Arten von Speichern) aus?

"Speicherschäden" da denkt man immer an einen Defekten Speicherbaustein. Daher hab ich den Thread in "Lebensdauer von Memory Leaks" umbenannt.

DarthB

Treue Seele

Beiträge: 265

Beruf: Schüler

  • Private Nachricht senden

2

13.08.2003, 00:55

Schlimmstens bis zum reboot. Aber es geht nette Tools wie "RamIdle" einfach mal nach googlen die deinen Speicher aufräumen.
Windows sollte das aber eigentlich auch irgendwie selbst wissen kenne mich da nicht so genau aus.
Aber nach nem neustart ist alles wieder free! ;)

3

13.08.2003, 00:57

Soweit ich weiß, nur bis zum beenden des Programms.
Ein Gespenst geht um in Europa...

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

4

13.08.2003, 01:37

Spätestens beim Reboot, ob nach Beenden des Programms hängt vom Betriebssystem ab.

Anonymous

unregistriert

5

13.08.2003, 02:25

Und bei Win98?

6

22.08.2003, 02:06

Win 2K/XP Mappen den speicher. Beim Beenden eines Programms wird auch dessen Speicher gelöscht. Bei 98 bin ich mir da nicht sicher. Das System hat so ein schlechtes Speichermanagment, das ein reboot nötig sein wird.
Wichtig! Ich übernehme keinerlei Verantwortung für eventl. Datenverlust oder Schäden am Rechner ;D

Tracert

Treue Seele

Beiträge: 108

Wohnort: Braunschweig

Beruf: Student

  • Private Nachricht senden

7

22.10.2003, 14:38

Bei NT/2k/XP wird der Speicher für jedes Programm abgegrenzt verwaltet, soweit ich weiß. Wird das Programm beendet, wird sämtlicher von diesem allokierter Speicher wieder freigegeben. Speicherlecks "leben" also nur bis zum Beenden des Programmes. Zusätzlich ist der System/Kernel-Bereich vom Rest (andere Programme) abgeschottet, so dass ein Speicherleck oder -verwaltungsfehler keine Auswirkungen auf das System selbst hat, ein Neustart ist daher eigentlich auch bei gravierenden Programmierfehlern nicht nötig. Praktisch ist es aber gerade bei Nutzung von DX etc. schnell passiert, dass alle Eingabegeräte nutzlos geworden sind und man deshalb resetten muss, aber das gehört hier nicht zum Thema.

Bei der 9x-Reihe ist dies alles nicht der Fall. Der Speicher wird als Gesamtheit verwaltet und nicht automatisch wieder freigegeben, weshalb es so häufig, vor allem wenn der Rechner schon länger lief, zu Abstürzen kommt bzw. das System quälend langsam wird. Ein Fehler beim Programmieren kann zudem das System komplett unbrauchbar machen, auch wenn es nur ein ganz banaler ist, da hilft meist auch kein Taskmanager mehr.

Daher würde ich zum Programmieren definitiv immer ein Windows aus der NT-Reihe bevorzugen.

TR

Werbeanzeige