2010年6月30日水曜日

IDisposable実装のテンプレート

毎回調べてたので、テンプレートとして残しておく。
Disposeメソッドはusingでかこっても、非同期例外によってDisposeが呼び出されないことがあるので、IDisposableを実装する際には、アンマネージドオブジェクトを解放するためにファイナライザを実装しておく必要があります。

非同期例外恐ろしいですね。



public class DisposableImplClass : IDisposable
{
    private bool disposed;

    public DisposableImplClass()
    {
        disposed = false;
    }

    public void Dispose()
    {
        GC.SuppressFinalize(this);
        Dispose(true);
    }

    ~DisposableImplClass()
    {
        Dispose(false);
    }

    private void Dispose(bool disposing)
    {
        if (disposed)
        {
            return;
        }
        disposed = true;
        if (disposing)
        {
            // マネージリソースの解放処理
        }
        // アンマネージリソースの解放処理
    }
}


.

2010年6月20日日曜日

7つの習慣を読み始めました。

良書というのを教えて頂いたので、読み始めました。

真の成功とは。
「優れた人格を持つこと。」

その優れた人格を得る為の習慣が紹介されている書籍です。

優れた人格とは?
人間としての振る舞いや考え方の根本(正義・勇気・謙虚などの人の内面)が優れていること。
人間関係を良くするテクニックやその場を乗り切るための技術が
優れていることではない。

という前振りがあり、7つの習慣が紹介されていく。


ラベル