DbConnection.CloseAsync 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
异步关闭与数据库之间的连接。
public:
virtual System::Threading::Tasks::Task ^ CloseAsync();
public virtual System.Threading.Tasks.Task CloseAsync ();
abstract member CloseAsync : unit -> System.Threading.Tasks.Task
override this.CloseAsync : unit -> System.Threading.Tasks.Task
Public Overridable Function CloseAsync () As Task
返回
表示异步操作的 Task。
注解
此异步方法的默认实现委托给其同步方法,并返回一个已完成 Task
的 ,可能会阻止调用线程。
支持 异步编程 的数据提供程序应使用异步 I/O 操作替代默认实现。
Close和 CloseAsync 方法回滚任何挂起的事务。 然后释放与连接池的连接,或者在禁用连接池的情况下关闭连接。
应用程序可以调用 Close 或 CloseAsync 多次。 不会生成异常。
DbConnection如果 超出范围,则不会关闭。 因此,必须通过调用 Close
或 Dispose
显式关闭连接,这在功能上是等效的。 如果连接池值 Pooling
设置为 true
或 yes
,则也会释放物理连接。
注意
不要关闭或释放 DbConnection
类的 方法中的 Finalize
、 DbDataReader
或任何其他托管对象。 在终结器中,应仅释放类直接拥有的非托管资源。 如果类不拥有任何非托管资源,则不要在类定义中包含 Finalize
方法。 有关详细信息,请参阅垃圾回收。
此方法将存储在任务中,它返回该方法的同步对应项可能引发的所有非使用异常。 如果异常存储在返回的任务中,则在等待任务时将引发该异常。 使用异常(如 ArgumentException)仍会同步引发。 有关存储的异常,请参阅 引发的 Close()异常。