When using finally block in C# , it is guaranteed that it will run after the try catch block is executed .
When will Finally Block not run in C# ?
There are scenarios when the finally block will not run in C# . If you are forcing the process exit within the try block for example , the finally will not be run .
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
namespace GinktageConsoleApp
{
class Program
{
static void Main(string[] args)
{
try
{
// Exit immediately
Environment.Exit(0);
}
catch(DivideByZeroException ex)
{
throw;
}
finally
{
Console.WriteLine("Finally Block");
}
}
}
}