2016年06月09日
【VB】Me.Close()とMe.Dispose()の違い
Me.Close()
Me.Dispose()
は根本的に違います。
Close()メソッド・・・フォームの表示を終了させるメソッドです。
インスタンスは残っているため、再利用が可能です。
Dispose()メソッド・・・インスタンスの破棄を明示的に行うものです。
ですので、再利用はできません。
ShowDialogの場合は、メソッド内部で、ハンドルが破棄されているため、
Close()メソッドの際にDispose()メソッドが呼び出されます。
インスタンスを明示的に破棄したほうがよい場合は多く存在します。
外部とのコネクションを確実に破棄を保障してほしいときなどう場合は、これらを併用する必要があります。
Disposeの場合はファイナライズが同時に行われるため、使用していたメモリ空間を開放することができます。
上記のことより、
Me.Close()
Me.Dispose()
は両方書いたほうがよいと思います。
ちなみに、
Me.Dispose()
Me.Close()
はエラーになります。
この記事へのコメント
コメントを書く
この記事へのトラックバックURL
https://fanblogs.jp/tb/5145583
※ブログオーナーが承認したトラックバックのみ表示されます。
この記事へのトラックバック