C# 覆盖并终止阻止调用finally的程序。实现这一发现的一个关键点是,Windows 10处理异常的方式与Windows 7不同。我在我的开发机器上尝试了这个,当WER被取消时,它仍然运行Win7,程序仍然冻结并变灰。在附近的Win10机器上,它的工作方式与
覆盖并终止阻止调用finally的程序。实现这一发现的一个关键点是,Windows 10处理异常的方式与Windows 7不同。我在我的开发机器上尝试了这个,当WER被取消时,它仍然运行Win7,程序仍然冻结并变灰。在附近的Win10机器上,它的工作方式与您所展示的一样。我的猜测是WER停止执行,在Win7上永远不会恢复执行,而在Win10上,WER分离后程序被释放。C# 覆盖并终止阻止调用finally的程序。实现这一发现的一个关键点是,Windows 10处理异常的方式与Windows 7不同。我在我的开发机器上尝试了这个,当WER被取消时,它仍然运行Win7,程序仍然冻结并变灰。在附近的Win10机器上,它的工作方式与,c#,exception-handling,try-finally,C#,Exception Handling,Try Finally,覆盖并终止阻止调用finally的程序。实现这一发现的一个关键点是,Windows 10处理异常的方式与Windows 7不同。我在我的开发机器上尝试了这个,当WER被取消时,它仍然运行Win7,程序仍然冻结并变灰。在附近的Win10机器上,它的工作方式与您所展示的一样。我的猜测是WER停止执行,在Win7上永远不会恢复执行,而在Win10上,WER分离后程序被释放。 static void Main() { int i = 0; try { int j
static void Main()
{
int i = 0;
try
{
int j = 1 / i; // Generate a divide by 0 exception.
}
finally
{
Console.Out.WriteLine("Finished");
Console.In.ReadLine();
}
}
int i = 0;
try
{
int j = 1 / i; // Generate a divide by 0 exception.
}
catch(Exception e)
{
Console.Out.WriteLine("Exception caught");
}
finally
{
Console.Out.WriteLine("Finished");
Console.In.ReadLine();
}
static void Main(string[] args)
{
try
{
CatchTest();
}
catch (Exception)
{
}
}
private static void CatchTest()
{
int i = 0;
try
{
int j = 1 / i; // Generate a divide by 0 exception.
}
finally
{
Console.Out.WriteLine("Finished");
Console.In.ReadLine();
}
}
static void Main()
{
try
{
int i = 0;
try
{
int j = 1 / i; // Generate a divide by 0 exception.
}
finally
{
Console.Out.WriteLine("Finished");
Console.In.ReadLine();
}
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
}
static void Main(string[] args)
{
try{
throw new Exception("");
} finally {
Console.WriteLine("I am never called!");
Console.ReadLine();
}
}