Why is 'using' improving C# performances
Posted
by Wernight
on Stack Overflow
See other posts from Stack Overflow
or by Wernight
Published on 2010-06-17T14:32:58Z
Indexed on
2010/06/17
14:43 UTC
Read the original article
Hit count: 234
It seems that in most cases the C# compiler could call Dispose()
automatically. Like most cases of the using pattern look like:
public void SomeMethod()
{
...
using (var foo = new Foo())
{
...
}
// Foo isn't use after here (obviously).
...
}
Since foo
isn't used (that's a very simple detection) and since its not provided as argument to another method (that's a supposition that applies to many use cases and can be extended), the compiler could automatically call Dispose()
without the developper requiring to do it.
This means that in most cases the using
is pretty useless if the compiler does some smart job. IDisposable
seem low level enough to me to be taken in account by a compiler.
Now why isn't this done? Wouldn't that improve the performances (if the developpers are... dirty).
© Stack Overflow or respective owner