■ IDisposable 인터페이스 사용하기 예제

----------------------------------------------------------------------------------------------------

DisposableObject disposableObject = new DisposableObject();

 

...

 

disposableObject.Dispose(); // 리소스를 명시적으로 해제한다.

 

또는

 

using(DisposableObject disposableObject = new DisposableObject())

{

    // 범위를 벗어나면 리소스를 자동으로 해제한다.

}

----------------------------------------------------------------------------------------------------

 

■ IDisposable 인터페이스 사용하기

----------------------------------------------------------------------------------------------------

using System;

 

/// <summary>

/// 해제 가능한 객체

/// </summary>

public class DisposableObject : IDisposable

{

    //////////////////////////////////////////////////////////////////////////////////////////////////// Destructor

 

    #region 소멸자 - ~DisposableObject()

 

    /// <summary>

    /// 소멸자

    /// </summary>

    ~DisposableObject()

    {

        ////////////////////////////////////////

        //

        // 리소스를 해제하는 코드

        //

        ////////////////////////////////////////

    }

 

    #endregion

 

    //////////////////////////////////////////////////////////////////////////////////////////////////// Method

    ////////////////////////////////////////////////////////////////////////////////////////// Public

 

    // IDisposable

    #region 해제하기 - Dispose()

 

    /// <summary>

    /// 해제하기

    /// </summary>

    public void Dispose()

    {

        ////////////////////////////////////////

        //

        // 리소스를 해제하는 코드

        //

        ////////////////////////////////////////

 

        GC.SuppressFinalize(this);

    }

 

    #endregion

}

----------------------------------------------------------------------------------------------------

Posted by 사용자 icodebroker
TAG

댓글을 달아 주세요