プログラムが実行されている限り、finallyブロックは常に実行されると私は想定していました。ただし、このコンソールアプリでは、finallyブロックが実行されていないようです。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
try
{
throw new Exception();
}
finally
{
Console.WriteLine("finally");
}
}
}
}
出力
注:例外がスローされたとき、ウィンドウからアプリケーションを終了するかどうか尋ねられたので、「はい」と答えました。