[de] GC.WaitForPendingFinalizers (solved)

Topics: Technical Support
Sep 16, 2010 at 11:39 PM

Hallo Rainbird,

bei der Implementierung von IDisposable - wie in CyanConnection.cs - macht es keinen Sinn auf den Finalizer zu warten. Es wäre stattdessen besser nach erfolgreichem Dispose - also wenn alle Ressourcen freigegeben sind - das Objekt von der Finalizer-Queue mit GC.SupressFinalize(this) zu nehmen.

Ein explizites Nullsetzen der Felder ist nicht unbedingt notwendig - der GC kapiert das schon ;-)

BTW: Das Feld _disposing sollte besser _isDisposed heißen denn das ist ja das was es darstellen soll.

Generell für IDisposalbe interessant: Detaillierte Untersuchung von IDisposable

 

mfG Gü

Coordinator
Sep 17, 2010 at 6:07 PM

Hallo gfoidl,

danke für den Hinweis.
Der Fehler wurde bereits behoben. Du findest die aktualisierte Version unter: Changeset 621

Gruß

Rainbird