你的timer是1s执行一次吗?
是的
只要执行到throw new Exception();就会有未处理的异常. 除非你第二段代码就没有运行..
崩溃错误信息是什么
怎么感觉应该是第一个不会第二个会呢……
试了一下,确实是题主描述的这样,但可能不是大家理解的那个情况。我是在一个 winform 应用里,在点击 button 之后执行这个:
var timer = new System.Timers.Timer();
timer.Elapsed += async (_, _) =>
{
timer.Stop();
throw new Exception();
};
timer.Start();
然后用 vs 调试运行,出现异常之后,会回到 vs ,这时候不管它,直接继续运行。这时候如果没有 async ,程序仍然继续运行,界面还是在那里,但如果有 async 会直接闪退。
不知道和题主说的是不是一回事。