Entwickler-Ecke

Sonstiges (.NET) - Wie wichtig ist der Garbage Collector?


erfahrener Neuling - Mi 02.03.16 16:20
Titel: Wie wichtig ist der Garbage Collector?
Hallo

ich habe vor kurzem angefangen, mit C# zu programmieren. Davor lernte ich ausschließlich Java.

Damals meinte mein Informatiklehrer immer, dass der Garbage-Collector (welcher bei Java ja automatisch lief) sehr wichtig sei, um sich die Festplatte nicht mit 'Speicherleichen' vollzumüllen.

Nun Frage ich mich, ob ich diesen bei jedem Programm laufen lassen sollte oder nur bei speziellen Sachen (wenn ja, welche?).
Da es ja nirgendwo explizit erwähnt wird, scheint es ja nicht schlimm zu sein, diesen bei 'normalen' Forms-Programmen nicht laufen zu lassen. Oder kann es sein, dass dieser mittlerweile auch automatisch mitläuft? (wie bei Java)
Ich benutze Visual Studio 2015 Community Edition

Vielen dank für zukünftige Antworten!


Moderiert von user profile iconChristian S.: Topic aus WinForms verschoben am Mi 02.03.2016 um 15:43


Christian S. - Mi 02.03.16 16:40

Hallo,

die Garbage Collection hat nichts mit der Festplatte zu tun, sondern sorgt dafür, dass Objekte aus dem Speicher entfernt werden, die nicht mehr gebraucht werden (z.B. wenn keine Referenzen mehr darauf existieren). Und der läuft nicht "mittlerweile auch automatisch", sondern hast das in .NET schon immer getan ;-)

Meiner Erfahrung nach lässt man ihn einfach seine Arbeit machen, ohne ihn zu behindern oder explizit aufzurufen. Eine Einführung zur garbage collection in .NET gibt es hier: https://msdn.microsoft.com/de-de/library/ms973837.aspx
Eine ganze Liste mit Artikeln dazu: https://msdn.microsoft.com/de-de/library/0xy59wtx(v=vs.110).aspx

Grüße
Christian


Lemmy - Mi 02.03.16 16:41

user profile iconerfahrener Neuling hat folgendes geschrieben Zum zitierten Posting springen:

um sich die Festplatte nicht mit 'Speicherleichen' vollzumüllen.


geh da bitte nochmal in dich... Wenn der das so wirklich gesagt hat, ist das Abendland nicht mehr zu retten ;-)

Garbage Collection [https://msdn.microsoft.com/de-de/library/0xy59wtx%28v=vs.110%29.aspx]

Moderiert von user profile iconTh69: URL-Titel geändert.


erfahrener Neuling - Mi 02.03.16 16:54

Hi

Zitat:
sondern sorgt dafür, dass Objekte aus dem Speicher entfernt werden, die nicht mehr gebraucht werden (z.B. wenn keine Referenzen mehr darauf existieren)


Ja so hat er's auch immer beschrieben, hat aber gemeint, dass man bei C-Sprachen darauf achten sollte.

Dann kann ich ja erstmal ruhigen Gewissens weiter machen.

Danke dafür!