Pointer von Form

Dipsi

Mitglied
Hallo

Ich schreibe zur Zeit mein erstes C#.NET (VS 2005) Programm.
Läuft eigentlich bis jetzt auch gut.

Meine Frage:
Ich habe in meinem Program ein paar "unschöne" stellen gefunden, weiss aber nicht wie ich das im C# lösen kann.
Z.B. starte ich ein Thread dem ich den Pointer this vom Form übergebe.
Jetzt weiss ich nicht, ober er den Ganzen Inhalt vom Form übergibt oder nur einen Pointer.
Wie kann ich nur einen Pointer vom Form übergeben?
(Ich habe vorher mit C++/MFC programmiert. Da muss man den Pointer casten. Ist das im C# auch so?)
Zweite Frage: Mein Programm muss mit ziemlich viel Daten arbeiten. Wenn ich eine Funktion ausführe springt er auf 35 MB (RAM Speicher). Finde ich bein bisschen viel für ein sollches Programm.
Ich glaube das ist, weill das "Daten Array" über Tausende von Einträgen hat.
Wenn ich as aber auf "NULL" stelle bleibt der Speicher im RAM (35MB) trotzdem besetzt.
Wie kann ich diesen Speicher wieder freigeben?

Vielen Dank im Voraus :)
 
Zuletzt bearbeitet:
Zu deiner ersten Frage:
Es wird dabei eine "Pointer" übergeben. Das kannst du aber auch über den HashCode des Objektes überprüfen.

Zur zweiten Frage:
.NET funktioniert (wie auch Java) hier gänzlich anders als .NET. Es gibt einen sogenannten Garbage Collector. Der sorgt für die Freigabe des Speichers (hängt aber von der Ressource ab). Einfach mal nachlesen wie dieser funktioniert, dann wird es klarer für dich.
 
Zurück