タグ

Engineerに関するDoBlogNeoのブックマーク (1)

  • [C#]イマイチ分かりにくいIDisposableの実装方法をまとめる。 | TOACH

    IDisposableという、さかしいインターフェースをご存知だろうか? C#からC++を呼び出すなどで外部DLLを扱う場合に割り当てたメモリーや、ファイルハンドル、Bitmapクラスなどアンマネージドリソースを明示的に開放する方法を定義したもので、MSDNには、Dispose()というメソッドのみが用意されている。 IDisposable インターフェイス (System) 要は、このメソッドの中で、クラスが持っているリソースを開放するだけなのだけれど、単にこのメソッドを実装するだけではダメな意地のわるいインターフェース。 今回は、そんな困ったチャンを正しく使う方法をまとめる。方法だけ知りたいせっかちな御仁は最後のセンテンスだけ読めばOK。 まずはDispose()を実装する 兎にも角にも、まずは実装してみる。 メンバーにアンマネージドリソースを持っているクラスを考える。 interna

    [C#]イマイチ分かりにくいIDisposableの実装方法をまとめる。 | TOACH
  • 1