方法: システム リソースを破棄する (Visual Basic)

Using ブロックを使用すると、コードがこのブロックを終了するときに、リソースが必ず破棄されることを保証できます。 これは、大量のメモリを消費するシステム リソースを使用している場合、または、他のコンポーネントでもそのシステム リソースを使いたい場合に役立ちます。

コードでの使用が済んだ時点でデータベース接続を破棄するには

  1. データベース接続用の適切な Imports ステートメント (.NET名前空間と型) を、ソース ファイル (この場合は System.Data.SqlClient) の先頭に必ず追加します。

  2. Using ステートメントと End Using ステートメントを使用して、Using ブロックを作成します。 ブロック内に、データベース接続を処理するコードを配置します。

  3. 接続を宣言し、そのインスタンスを Using ステートメントの一部として作成します。

    ' Insert the following line at the beginning of your source file.  
    Imports System.Data.SqlClient  
    Public Sub AccessSql(ByVal s As String)  
        Using sqc As New System.Data.SqlClient.SqlConnection(s)  
            MsgBox("Connected with string """ & sqc.ConnectionString & """")  
        End Using  
    End Sub  
    

    ハンドルされていない例外のケースを含め、ブロックを終了する方法に関係なくリソースが破棄されます。

    スコープがブロックに限定されているため、Using ブロック外から sqc にアクセスできないことに注意してください。

    同じ手法を、ファイル ハンドルや COM ラッパーなどのシステム リソースでも使用できます。 Using ブロックは、Using ブロックを終了した後に、リソースを確実に他のコンポーネントで使用できるようにしたいときに使用します。

関連項目