← 모든 글
Flutter

5. 비동기 객체 - 기초

이전 글 : 4. Scopes - 심화

by rati·

이전 글 : 4. Scopes - 심화 다음 글 :

비동기 객체 관련 지원이 존재하는 이유. -> 비동기 작업(DB 연결, 네트워크 설정, 파일 I/O)이 필요한 객체의 생성과 초기화를 완벽하게 지원하기 위해서.

**주요 기능

  • 비동기 팩토리 (Async Factories): 객체에 접근할 때마다 매번 새로운 인스턴스를 비동기적으로 생성합니다.
  • 비동기 싱글톤 (Async Singletons): 비동기 초기화 로직을 거친 후 단일 인스턴스를 유지합니다.
  • 의존성 관리 (Dependency Management): 다른 비동기 객체가 준비될 때까지 기다린 후 초기화를 진행하도록 자동 설정할 수 있습니다.
  • 초기화 오케스트레이션 (Startup Orchestration): 복잡한 순서가 필요한 서비스들의 초기화 시퀀스를 조정합니다.
  • 수동 신호 (Manual Signaling): 특정 객체가 ’준비 완료’되었음을 세밀하게 제어할 수 있습니다.

관련 메서드 요약.

메서드 생성 시점 인스턴스 개수 생명주기 최적의 용도
registerFactoryAsync getAsync() 호출 시마다 매번 생성 (Many) 요청 시마다 생성 접근 시마다 새로운 비동기 작업이 필요한 경우
registerCachedFactoryAsync 첫 접근 시 및 GC 이후 메모리에 있을 때 재사용 가비지 컬렉션 전까지 비용이 큰 비동기 작업의 성능 최적화
registerSingletonAsync 등록 즉시 하나 (One) 영구적 앱 수준의 비동기 설정 서비스 (DB 등)
registerLazySingletonAsync 첫 getAsync() 호출 시 하나 (One) 영구적 항상 필요하지는 않은 무거운 비동기 서비스
registerSingletonWithDependencies 의존성 준비 완료 후 하나 (One) 영구적 다른 서비스에 의존하는 비동기 서비스

비동기 팩토리

https://flutter-it.dev/documentation/get_it/async_objects#async-factories

끝까지 읽어주셔서 감사합니다.
DISCUSSION

이 글에 대해 이야기해요

질문이나 다른 관점을 남겨 주세요.