Interface ISystem
모든 Framework System의 기반 계약. IInitializable + IDisposable 통합.
public interface ISystem : IInitializable
- Inherited Members
Examples
public class MySystem : ISystem
{
public async UniTask InitializeAsync(CancellationToken ct = default)
{
// 초기화 로직
}
public void Dispose()
{
// 정리 로직
}
}
// RootScope 등록:
builder.Register<MySystem>(Lifetime.Singleton).AsImplementedInterfaces();
Remarks
RootScope에 Singleton으로 등록된 System은 앱 종료 시 VContainer가 자동으로 Dispose를 호출한다.
PlaySceneScope에 Scoped로 등록된 System은 씬 언로드 시 자동 해제된다.
[규칙] System.IDisposable을 직접 사용하며, 별도 인터페이스로 재정의하지 않는다.