40 lines
434 B
C#
40 lines
434 B
C#
|
using System;
|
||
|
|
||
|
class DispBar : IDisposable
|
||
|
{
|
||
|
|
||
|
public void Dispose ()
|
||
|
{
|
||
|
Console.WriteLine ("DispBar.Dispose");
|
||
|
}
|
||
|
}
|
||
|
|
||
|
class Foo
|
||
|
{
|
||
|
|
||
|
public IDisposable GetBar ()
|
||
|
{
|
||
|
return new DispBar ();
|
||
|
}
|
||
|
}
|
||
|
|
||
|
class Test
|
||
|
{
|
||
|
|
||
|
static Foo foo = new Foo ();
|
||
|
|
||
|
public static bool TryThing ()
|
||
|
{
|
||
|
using (IDisposable disp = foo.GetBar ()) {
|
||
|
|
||
|
bool bang = false;
|
||
|
foo = null;
|
||
|
return bang;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
public static void Main ()
|
||
|
{
|
||
|
TryThing ();
|
||
|
}
|
||
|
}
|