DB2 10.5 for Linux, UNIX, and Windows

DB2Connection.ReleaseObjectPool 方法

指示在释放最后一个基础连接时可以释放连接池的资源。

名称空间:
IBM.Data.DB2
组合件:
IBM.Data.DB2(在 IBM.Data.DB2.dll 中)

语法

[Visual Basic]
Public Shared Sub ReleaseObjectPool()
[C#]
public static void ReleaseObjectPool();
[C++]
public: static void ReleaseObjectPool();
[JScript]
public static function ReleaseObjectPool();

注释

可以调用 ReleaseObjectPool 来释放连接池的资源。例如,如果将不再使用连接对象,那么可以调用此方法。当池中的所有连接都关闭时,就可以释放该池。注意,只是调用该方法实际上不会释放池中存在的活动连接。

在最终释放连接池之前,必须执行以下步骤:
  1. 调用 Close 以释放环境中的 DB2®Connection 对象。
  2. 等待每个连接对象超时。
  3. 调用 ReleaseObjectPool
  4. 调用垃圾收集。

相反,如果在所有活动连接上都调用 Close 并调用垃圾收集,但是不调用 ReleaseObjectPool,那么为池保留的资源仍然可用。

在释放池之后,将请求新的 DB2Connection 创建新池。

示例

[Visual Basic, C#] 以下示例将创建 DB2Connection,打开它,显示它的一些属性,关闭该连接,然后释放对象池以保存资源。

[Visual Basic]
Public Sub CreateDB2Connection(myConnString As String)
     Dim myConnection As New DB2Connection(myConnString)
     myConnection.Open()
     MessageBox.Show("State: " + myConnection.State.ToString())
     myConnection.Close()
     DB2Connection.ReleaseObjectPool()
 End Sub

[C#]
public void CreateDB2Connection(string myConnString)
 {
    DB2Connection myConnection = new DB2Connection(myConnString);
    myConnection.Open();
    MessageBox.Show("State: " + myConnection.State.ToString());
    myConnection.Close();
    DB2Connection.ReleaseObjectPool();
 }