我有這個類:在這種情況下,Dispose()會提前釋放資源嗎?
class Foo : IDisposable
{
SomeBigResource resource;
void UsingResource()
{
using(Bar bar = new Bar(SomeBigResource)
bar.doStuff();
}
void Dispose()
{
resource.Dispose();
}
}
void Function()
{
using (Foo foo = new Foo(new SomeBigResource))
foo.UsingResource();
}
酒吧對象具有完全相同的Dispose()
功能。
我的SomeBigResource
會被釋放還是GC智能足以在第二次使用完成後再釋放它?
Dispose與GC無關。 – 2010-07-22 14:12:15
SomeBigResource所屬的類必須配置它 – Arseny 2010-07-22 14:19:30