Click here to Skip to main content
15,914,444 members
Home / Discussions / C#
   

C#

 
GeneralRe: Dispose method calls itself for no reason Pin
Luc Pattyn5-Jan-09 12:55
sitebuilderLuc Pattyn5-Jan-09 12:55 
GeneralRe: Dispose method calls itself for no reason Pin
mirko865-Jan-09 13:13
mirko865-Jan-09 13:13 
GeneralRe: Dispose method calls itself for no reason Pin
mirko865-Jan-09 13:26
mirko865-Jan-09 13:26 
GeneralRe: Dispose method calls itself for no reason Pin
Luc Pattyn5-Jan-09 13:44
sitebuilderLuc Pattyn5-Jan-09 13:44 
GeneralRe: Dispose method calls itself for no reason Pin
mirko865-Jan-09 13:54
mirko865-Jan-09 13:54 
GeneralRe: Dispose method calls itself for no reason Pin
Luc Pattyn5-Jan-09 13:38
sitebuilderLuc Pattyn5-Jan-09 13:38 
GeneralRe: Dispose method calls itself for no reason Pin
mirko865-Jan-09 13:50
mirko865-Jan-09 13:50 
GeneralRe: Dispose method calls itself for no reason Pin
Luc Pattyn5-Jan-09 14:37
sitebuilderLuc Pattyn5-Jan-09 14:37 
Hi,

one must be careful about the things executed while in Dispose: the object itself may be dead (when Dispose got called by the GC finalizer), whatever it's state it may (probably will) still reference other objects that may or may not be alive (alive when other live
objects also refer to them).

e.g. a Form that gets closed holds all its Controls in a Controls collection, and
all these Controls refer to the Form as their parent, so they are likely to be
an island of dead objects. Now if you start doing something to one of them, that may
bring some of them back from the dead, really confusing the GC.

Say all its Controls got Disposed of before the Form.Dispose() gets called; if you now move one of its Controls (they are still in the Controls collection and possibly in some of the Form's data fields!) to another Form, that Control is alive again, and your app is 1) likely to crash and 2) if not, may well call Dispose on that Control again.

Smile | :)

Luc Pattyn [Forum Guidelines] [My Articles]

Love, happiness and fewer bugs for 2009!


GeneralRe: Dispose method calls itself for no reason Pin
MidwestLimey5-Jan-09 14:30
professionalMidwestLimey5-Jan-09 14:30 
GeneralRe: Dispose method calls itself for no reason Pin
Mark Churchill5-Jan-09 16:40
Mark Churchill5-Jan-09 16:40 
AnswerRe: Dispose method calls itself for no reason Pin
Jon Rista6-Jan-09 10:26
Jon Rista6-Jan-09 10:26 
GeneralRe: Dispose method calls itself for no reason Pin
mirko866-Jan-09 11:08
mirko866-Jan-09 11:08 
GeneralRe: Dispose method calls itself for no reason Pin
Jon Rista6-Jan-09 11:45
Jon Rista6-Jan-09 11:45 
GeneralRe: Dispose method calls itself for no reason Pin
mirko866-Jan-09 11:57
mirko866-Jan-09 11:57 
GeneralRe: Dispose method calls itself for no reason Pin
mirko866-Jan-09 12:37
mirko866-Jan-09 12:37 
QuestionHow to use C# class library dll controls in C++ Win32 project Pin
atisman5-Jan-09 10:10
atisman5-Jan-09 10:10 
AnswerRe: How to use C# class library dll controls in C++ Win32 project Pin
EliottA5-Jan-09 10:13
EliottA5-Jan-09 10:13 
Question[Message Deleted] Pin
Vady_15-Jan-09 9:47
Vady_15-Jan-09 9:47 
AnswerRe: Hii Allll !!!! Pin
#realJSOP5-Jan-09 10:29
professional#realJSOP5-Jan-09 10:29 
GeneralRe: Hii Allll !!!! Pin
EliottA5-Jan-09 10:55
EliottA5-Jan-09 10:55 
GeneralRe: Hii Allll !!!! Pin
User 66585-Jan-09 11:22
User 66585-Jan-09 11:22 
GeneralRe: Hii Allll !!!! Pin
vaghelabhavesh5-Jan-09 13:02
vaghelabhavesh5-Jan-09 13:02 
JokeRe: Hii Allll !!!! Pin
Silvyster5-Jan-09 13:45
Silvyster5-Jan-09 13:45 
GeneralRe: Hii Allll !!!! Pin
#realJSOP5-Jan-09 23:45
professional#realJSOP5-Jan-09 23:45 
AnswerRe: Hii Allll !!!! Pin
Ravi Bhavnani5-Jan-09 17:41
professionalRavi Bhavnani5-Jan-09 17:41 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.