OleDbConnection.ReleaseObjectPool Methode

Definition

Gibt an, dass der OleDbConnection Objektpool freigegeben werden kann, wenn die letzte zugrunde liegende Verbindung freigegeben wird.

public:
 static void ReleaseObjectPool();
public static void ReleaseObjectPool();
static member ReleaseObjectPool : unit -> unit
Public Shared Sub ReleaseObjectPool ()

Beispiele

Im folgenden Beispiel wird ein OleDbConnection, öffnet es, zeigt einige seiner Eigenschaften an, schließt die Verbindung und gibt den Objektpool frei, um Ressourcen zu sparen.

static void OpenConnection(string connectionString)
{
    using (OleDbConnection connection = new OleDbConnection(connectionString))
    {
        try
        {
            connection.Open();
            Console.WriteLine("Connection.State: {0}", connection.State);

            connection.Close();
            OleDbConnection.ReleaseObjectPool();
            Console.WriteLine("Connection.State: {0}", connection.State);
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
        }
        // The connection is automatically closed when the
        // code exits the using block.
    }
}
Public Sub OpenConnection(ByVal connectionString As String)

    Using connection As New OleDbConnection(connectionString)
        Try
            connection.Open()
            Console.WriteLine("Connection.State: {0}", _
                connection.State)

            connection.Close()
            OleDbConnection.ReleaseObjectPool()
            Console.WriteLine("Connection.State: {0}", _
                connection.State)

        Catch ex As Exception
            Console.WriteLine(ex.Message)
        End Try
    End Using
End Sub

Hinweise

ReleaseObjectPool kann aufgerufen werden, um Ressourcen freizugeben, die andernfalls für poolierte OleDbConnection Objekte reserviert wären. Sie können diese Methode aufrufen, wenn das Verbindungsobjekt z. B. nicht mehr für den Zeitraum verwendet wird, für den OLE DB-Dienste in einem Pool aktiv bleiben. Beachten Sie, dass das Aufrufen der Methode allein nicht die aktiven Verbindungen freigibt, die im Pool vorhanden sind.

Bevor der Pool endgültig verworfen wird, muss Folgendes auftreten:

  1. Aufrufen Close , um das Verbindungsobjekt an den Pool zurückzugeben.

  2. Jedem Verbindungsobjekt das Timeout des Pools erlauben.

  3. Rufen Sie ReleaseObjectPoolauf.

  4. Aufrufen der Garbage Collection.

Wenn Sie dagegen alle aktiven Verbindungen aufrufen Close und die Garbage Collection aufrufen, aber nicht aufrufen ReleaseObjectPool, bleiben die ressourcen verfügbar, die für die gruppierten Objekte reserviert sind.

Gilt für:

Weitere Informationen