45.8 IDisposable 인터페이스 사용하기
이번에는 닷넷에 내장된 IDisposable 인터페이스를 사용해 보겠습니다. 이를 상속하는 클래스는 Dispose() 메서드를 구현해야 하는데요. 이 메서드는 해당 클래스의 개체를 다 사용한 후 마지막으로 호출해서 정리하는 역할을 합니다. 다음 내용을 입력한 후 실행해 보세요.
IDisposable 인터페이스 사용: IDisposableDemo.cs
using System;
class IDisposableDemo
{
static void Main()
{
Console.WriteLine("[1] 열기");
using (var t = new Toilet())
{
//특정 프로세스를 종료하면 자동으로 닫기 수행
Console.WriteLine("[2] 사용");
}
}
}
public class Toilet : IDisposable
{
public void Dispose()
{
Console.WriteLine("[3] 닫기");
}
}
실행 결과
[1] 열기 [2] 사용 [3] 닫기
using 문은 IDisposable 인터페이스를 구현하는 개체를 올바르게 사용할 수 있도록 도와줍니다. using 문으로 개체를 묶어 생성하면 해당 using 문이 종료되면서 자동으로 Dispose() 메서드를 호출해서 정상 종료하도록 처리합니다.