> That said, one difference that's recently come to light is 
> that the .NET 1.1 sdk docs have introduced a new caution 
> stating that EndInvoke must be called after using BeginInvoke 
> in order to avoid leaking things [1]. 

This is a real shame.  I've used BeginInvoke in a fire-and-forget type
way and it's pretty damn useful.  If they're going to introduce a
warning that it could be a problem, I feel they should implement a
"FireAndForget" type function, like you have in your AsyncHelper.  That
would make things clearer to the casual developer.

What's the point of a garbage collector if it won't solve these leakage
issues?  I appreciate we've got the Dispose-style functionality for
unmanaged resources, but elsewhere..

Incidentally, does the same requirement to call EndInvoke exist when you
do a .BeginInvoke on a windows form control?

Best wishes
James

Reply via email to