Suchergebnisse
Suchergebnisse 1-4 von insgesamt 4.
Hier erfahren Sie, wie einfach Sie Ihren Browser aktualisieren können.
-
Point ist ne struct und somit, solang man den nicht in ein Array packt somit stack allocated, wird also nicht vom GC aufgeräumt... Also das setzen auf Nothing bringt nichts, da das mit default(Point) gleichzusetzen sein dürfte, was genauso nen Wert ist, nur halt derselbe wie new Point(0,0)^^ Mach doch einfach eine Diagnosesitzung, dann sollte schon zu sehen sein, was da den Speicher auffüllt, du kannst ja auch ca.Anzahl mancher Objekte abschätzen und wenn es dann einiges mehr ist kannst es vlt. …
-
Dispose zerstört nur die zugrundeliegenden GDI objekte, welche mittels WinAPI erzeugt werden, nicht jedoch die .Net Wrapper Objekte, die sollten irgendwann vom GC aufgeräumt werden, die Frage ist allerdings warum das nicht passiert. Hast du die Diagnosesitzung mal bis zum Ende durchlaufen lassen? Vlt. auch ein paar Snapshots machen, sodass man eine Steigerung von bestimmten Objekten sieht. Denn eigt. sollten die LinearGradientBrush spätestens aufgeräumt werden, wenn der Speicher ausgeht. Es sieh…
-
Tja, dann fällt mir fürs Pooling nur ein: referencesource.microsoft.com/…ed/LinearGradientBrush.cs Entweder das komplette Teil schnappen und neu bauen, oder eben mittels Reflection "void SetNativeBrushInternal(IntPtr brush)" auf zu rufen um die Objekte zu switchen und eben nur die GDI handles erzeugen/zu löschen indem du die Konstruktoren extra implementierst^^ Aber kommt mir alles unschön vor, hört sich irgendwie nach einem Bug an das ganze