zoukankan      html  css  js  c++  java
  • C#中try catch finally

      C#中try catch finally 用法:
     
           try-catch 块的用途是捕获并处理工作代码产生的异常。 某些异常可以在 catch 块中进行处理,问题得以解决并不再出现异常;但是,大多数情况下你唯一可做的是确保引发的异常是合理异常。
         1、将预见可能引发异常的代码包含在try语句块中。 
         2、如果发生了异常,则转入catch的执行。
         3.finally可以没有。无论有没有发生异常,它总会在这个异常处理结构的最后运行。即使你在try块内用return返回了,在返回前,finally总是要执行,这以便让你有机会能够在异常处理最后做一些清理工作。如关闭数据库连接等等。 
     
     
    public bool mTasktimer = true;
          
            private void TaskTimer_One(object sender, System.Timers.ElapsedEventArgs e)
            {
                lock (new object())   //加锁执行下面代码块,执行完让线程休眠5秒钟
                {
                    if (mTasktimer)
                    {
                        
                        try
                        {
                            mTasktimer = false;
    
                            LogExecute.logNet.WriteError("TaskTimer_Elapsed------try"); //日志
    
                        }
                        catch (Exception ex)
                        {
                            LogExecute.logNet.WriteError($"程序出现异常,错误原因是{ex.Message}");
    
                            LogExecute.logNet.WriteError("TaskTimer_Elapsed------try---Exception");  //日志
                        }
                        finally
                        {
    
                            mTasktimer = true;
                            Thread.Sleep(5000);
    
                            LogExecute.logNet.WriteError("TaskTimer_Elapsed------try---finally");  //日志
                            
                        }
                    }
                }
            }
    
        //     lock语句:
    
        //     lock 语句获取给定对象的互斥 lock,执行语句块,然后释放 lock。 持有 lock 时,持有 lock 的线程可以再次获取并释放 lock。 阻止任何其他线程获取 lock 并等待释放 lock。
    
    
        //     C#中try catch finally 用法:
        //     try-catch 块的用途是捕获并处理工作代码产生的异常。 某些异常可以在 catch 块中进行处理,问题得以解决并不再出现异常;但是,大多数情况下你唯一可做的是确保引发的异常是合理异常。
    
        //    1、将预见可能引发异常的代码包含在try语句块中。 2、如果发生了异常,则转入catch的执行。3.finally可以没有。无论有没有发生异常,它总会在这个异常处理结构的最后运行。即使你在try块内用return返回了,在返回前,finally总是要执行,这以便让你有机会能够在异常处理最后做一些清理工作。如关闭数据库连接等等。 
  • 相关阅读:
    JQuery批量图片上传插件—Uploadify使用记录
    SQL2008 附加数据库提示 5120错误
    enter the full pathname for java.exe
    共享文件夹设置
    曾经运行该线程的应用程序域已卸载
    无法打开物理文件 。操作系统错误 5:"5(拒绝访问。)"。 消息 5120,级别 16,状态 101
    开篇一个码农,一个苦逼的码农生活经历
    POI 3.17 读取Excel(模板)、导出Excel
    Java微信支付开发之关闭订单
    Linux下安装 MySQL5.7.28
  • 原文地址:https://www.cnblogs.com/xfweb/p/14656352.html
Copyright © 2011-2022 走看看