본문 바로가기
Delphi/문법

인터페이스(Interface) 활용으로 메모리 자동 관리 구현하기

by MonoSoft 2025. 6. 4.
728x90
반응형

인터페이스(Interface) 활용으로 메모리 자동 관리 구현하기

 

델파이에서 인터페이스를 활용하면 참조 카운트를 기반으로 
객체의 생명주기를 자동으로 관리할 수 있습니다. 
이를 통해 try..finally 없이도 안전하게 객체를 해제할 수 있어 
메모리 누수 방지와 코드 간결성에서 매우 유용합니다.

type
  IMyWorker = interface
    ['{A1B2C3D4-E5F6-1234-5678-90ABCDEF1234}']
    procedure DoWork;
  end;

  TMyWorker = class(TInterfacedObject, IMyWorker)
  public
    procedure DoWork;
  end;

procedure TMyWorker.DoWork;
begin
  ShowMessage('작업 실행 중...');
end;

procedure UseInterface;
var
  Worker: IMyWorker;
begin
  Worker := TMyWorker.Create;
  Worker.DoWork;
  // Worker는 범위를 벗어나면 자동으로 해제됨
end;

IInterface 또는 사용자 정의 인터페이스를 사용하면 참조 카운트 기반으로 객체 관리 가능

TInterfacedObject를 상속해야 자동 메모리 해제가 적용됨

컴포넌트보다는 일반 클래스에 적합

객체를 명시적으로 Free하지 않아도 되는 구조는 유지보수를 
더욱 편리하게 만들어줍니다. 
메모리 안전성이 중요할 땐 인터페이스를 사용해보세요

 


#델파이
#Delphi
#인터페이스
#TInterfacedObject
#참조카운트
#자동메모리관리
#메모리해제
#객체수명주기
#OOP설계
#안전한코딩

728x90
반응형

댓글