C#中try catch finally
try-catch 块的用途是捕获并处理工作代码产生的异常。 某些异常可以在 catch 块中进行处理,问题得以解决并不再出现异常;但是,大多数情况下你唯一可做的是确保引发的异常是合理异常。
- 将预见可能引发异常的代码包含在try语句块中。
- 如果发生了异常,则转入catch的执行。
- finally可以没有。无论有没有发生异常,它总会在这个异常处理结构的最后运行。即使你在try块内用return返回了,在返回前,finally总是要执行,这以便让你有机会能够在异常处理最后做一些清理工作。如关闭数据库连接等等。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| public bool mTasktimer = true; private void TaskTimer_One(object sender, System.Timers.ElapsedEventArgs e) { lock (new object()) { if (mTasktimer) { try { mTasktimer = false;
logNet4("TaskTimer_Elapsed------try");
} catch (Exception ex) { logNet4($"程序出现异常,错误原因是{ex.Message}");
logNet4("TaskTimer_Elapsed------try---Exception"); } finally {
mTasktimer = true; Thread.Sleep(5000);
logNet4("TaskTimer_Elapsed------try---finally"); } } } }
|