OleDbConnection.ReleaseObjectPool Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Indica che il pool di oggetti OleDbConnection può essere rilasciato quando viene rilasciata l'ultima connessione sottostante.
public:
static void ReleaseObjectPool();
public static void ReleaseObjectPool ();
static member ReleaseObjectPool : unit -> unit
Public Shared Sub ReleaseObjectPool ()
Esempio
L'esempio seguente crea un OleDbConnectionoggetto , lo apre, visualizza alcune delle relative proprietà, chiude la connessione e rilascia il pool di oggetti per conservare le risorse.
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
Commenti
ReleaseObjectPool
può essere chiamato per liberare risorse che altrimenti sarebbero riservate per gli oggetti in OleDbConnection pool. È possibile chiamare questo metodo se, ad esempio, l'oggetto connessione non verrà nuovamente utilizzato per il periodo di tempo in cui i servizi OLE DB mantengono normalmente attive le connessioni in pool. Si noti che la chiamata al metodo da solo non rilascia effettivamente le connessioni attive presenti nel pool.
Prima che il pool venga eliminato, è necessario eseguire le operazioni seguenti:
Chiamare Close per restituire l'oggetto connessione al pool.
Consente a ogni oggetto connessione di uscire dal pool.
Chiamare ReleaseObjectPool.
Richiamare Garbage Collection.
Viceversa, se si chiama Close su tutte le connessioni attive e si richiama Garbage Collection, ma non si chiama ReleaseObjectPool, le risorse riservate per gli oggetti in pool rimarranno disponibili.