1.确保释放数据库连接资源的两种方式如下:
   a.使用try...catch...finally语句块,在finally块中关闭连接;
   b.使用using语句块,无论如何退出,都会自动关闭连接;
2.最好的方法是组合使用以上两种方式。
   using System;

  1. using System.Data.SqlClient;
  2. namespace Magci.Test.DataAccess
  3. {
  4. class Program
  5. {
  6. static void Main(string[] args)
  7. {
  8. string source = @"server=.\sqlexpress; integrated security=SSPI; database=msdb";
  9. SqlConnection conn = null;
  10. //使用try块处理
  11. try
  12. {
  13. conn = new SqlConnection(source);
  14. conn.Open();
  15. //Do something
  16. }
  17. catch (Exception e)
  18. {
  19. //Do something with the exception
  20. }
  21. finally
  22. {
  23. conn.Close();
  24. }
  25. //使用using块处理
  26. using (conn = new SqlConnection(source))
  27. {
  28. conn.Open();
  29. //Do something
  30. }
  31. //两种组合方式
  32. try
  33. {
  34. using (conn = new SqlConnection(source))
  35. {
  36. conn.Open();
  37. //Do something
  38. conn.Close();
  39. }
  40. }
  41. catch (Exception e)
  42. {
  43. //Do something with the exception
  44. }
  45. }
  46. }
  47. }

C#中释放数据库连接资源相关推荐

  1. 使用JDBC后千万记得关闭并释放数据库连接资源

    参考:https://tomenjoy.iteye.com/blog/311350 转载于:https://my.oschina.net/u/4131327/blog/3083295

  2. Java中哪些操作会使线程释放锁资源

    1.sleep()方法 在指定时间内让当前正在执行的线程暂停执行,但不会释放"锁标志".不推荐使用. sleep()使当前线程进入阻塞状态,在指定时间内不会执行. 2.wait() ...

  3. 如何释放mysql连接资源_CI框架出现mysql数据库连接资源无法释放的解决方法

    本文实例分析了CI框架出现mysql数据库连接资源无法释放的解决方法.分享给大家供大家参考,具体如下: 使用ci框架提供的类查询数据: $this->load->database(); $ ...

  4. hikaricp 连接池分析_SpringBoot 2.0 中 HikariCP 数据库连接池原理解析

    作为后台服务开发,在日常工作中我们天天都在跟数据库打交道,一直在进行各种CRUD操作,都会使用到数据库连接池.按照发展历程,业界知名的数据库连接池有以下几种:c3p0.DBCP.Tomcat JDBC ...

  5. SpringBoot 2.0 中 HikariCP 数据库连接池原理解析

    作为后台服务开发,在日常工作中我们天天都在跟数据库打交道,一直在进行各种CRUD操作,都会使用到数据库连接池.按照发展历程,业界知名的数据库连接池有以下几种:c3p0.DBCP.Tomcat JDBC ...

  6. .NET中的托管资源与非托管资源

    托管资源指的是.NET可以自动进行回收的资源,主要是指托管堆上分配的内存资源.托管资源的回收工作是不需要人工干预的,有.NET运行库在合适调用垃圾回收器进行回收. 非托管资源指的是.NET不知道如何回 ...

  7. 编写高质量代码改善C#程序的157个建议——建议50:在Dispose模式中应区别对待托管资源和非托管资源...

    建议50:在Dispose模式中应区别对待托管资源和非托管资源 真正资源释放代码的那个虚方法是带一个bool参数的,带这个参数,是因为我们在资源释放时要区别对待托管资源和非托管资源. 提供给调用者调用 ...

  8. 异步Udp监听关闭 出现异常,访问已释放的资源或者其他错误的解决方法

    在开发异步Udp程序的过程中,通常在关闭UDP的时候回遇到诸如socket 访问已释放的资源之类的异常,如下简单操作下: 1 Udp的监听 2 this.serverSocket = new Sock ...

  9. thread.sleep会释放锁吗_面试 LockSupport.park()会释放锁资源吗?

    (手机横屏看源码更方便) 引子 大家知道,我最近在招人,今天遇到个同学,他的源码看过一些,然后我就开始了AQS连环问. 我:说说AQS的大致流程? 他:AQS包含一个状态变量,一个同步队列--bala ...

最新文章

  1. 高级指令——top指令【作用:查看服务器的进程占的资源】、du -sh指令【作用:查看目录的真实大小】、find指令【作用:用于查找文件】、service指令
  2. w3wp oracle,w3wp.exe占用CPU超过50%的处理
  3. php 记录报错,php报错自己记录
  4. 利用Ninject实现依赖注入
  5. 发现新的预言梦种类:预言梦投射
  6. 微端服务器物品备注,HeroM2引擎怎么在装备上添加备注 传奇添加物品备注说明的方法...
  7. EDEM中对几何体(机械设备)表面的精确受力分析
  8. 软件生命周期的八个阶段
  9. Java互联网医院源码,以互联网方式整合优质医生资源,为患者提供MDT多学科会诊、专家咨询、复诊配药等服务。
  10. Mac 输入法小技巧
  11. 信度检验-Krippendorff's alpha检验
  12. java 成员变量 默认_为什么Java成员变量有默认值,而非成员变量没有?
  13. 什么是SAP Analytics Cloud
  14. 【Android驱动】屏和TP谁先休眠的问题
  15. python拍七游戏代码_拍七数字游戏 - Johannes-Jensen - 博客园
  16. python证明冰雹猜想_如果冰雹猜想被证明了。那数学会有很大突破吗?
  17. vscode编辑器搜索小技巧
  18. http/2与http/1的区别
  19. 使用antd-pro组件 实现图片上传和图片编辑
  20. 最大扇入数怎么判断_如何判断,你的运动是否有效?

热门文章

  1. (一)KitJs瀑布流组件特点
  2. 当心XML文件中的非法字符
  3. IIS环境下ShopEx伪静态配置【图文教程+视频教程】
  4. vs2010 在svn上传东西的时候 出现一个错误 An internal occurred 值不在预期范围内 要如何解决呢?...
  5. SQLServer2000同步复制技术实现步骤作者
  6. 使用 JS 文件调用 Google AdSense 广告 cnblogs
  7. Magento: 设置产品列表默认排序方式 How to sort Magento products by date added as default
  8. Linux: find和xargs用法整理
  9. Objective-C的self.用法的一些总结
  10. php thumb 生成缩略图