我有以下代码:
class SampleClass : IDisposable
{
public void Dispose()
{
Console.WriteLine("Execute Dispose!");
}
}
static void Main(string[] args)
{
SampleClass sc = new SampleClass();
try
{
throw new Exception();
}
finally
{
sc.Dispose();
}
}
但是,当我运行它时,它不会打印Execute Dispose!
消息,这是为什么呢?
更新:
如果我像这样更改代码:
static void Main(string[] args)
{
SampleClass sc = new SampleClass();
try
{
try
{
throw new Exception();
}
finally
{
sc.Dispose();
}
}
catch
{
throw;
}
}
它首先打印消息然后崩溃。
我的想法是如果应用程序一开始崩溃,是否可以随心所欲地处理它?
我知道这很简单,但我真的要学习更多。