728x90
반응형
이번 글에서는 LifecycleScope를 소개해본다.
다만 제목 그대로 간단히 알아보려 하는데 이전 글에서 알아본 ViewModelScope와 비슷하기 때문이다.
LifecycleScope의 lifecycle 알아보기
생명주기는 생각보다 심플하다.
Lifecycle owner가 살아있는 동안 해당 스코프도 살아있게 된다.
상황에 따라 Activity, Fragment 등이 될 수 있다.
해당 owner가 destroy될 때 LifecycleScope에서 실행된 모든 코루틴은 cancel된다.
가장 대표적인 destroy 상황은 화면 회전에 의한 Activity destroy이다.
이렇게 되면 특정 작업을 수행하다가도 cancel되어버리는 상황이 발생하기에
이런 경우, ViewModelScope를 사용하는 것이 더 적절할 것이다.
LifecycleScope가 제공하는 함수
LifecycleScope는 특정 lifecycle 메소드가 실행될 때까지 suspend될 수 있다.
launchWhenStarted, launchWhenCreated, launchWhenResumed 함수를 제공하고
이름 그대로 onStart, onCreate, onResume 타이밍에 실행이 시작된다.
728x90
반응형
'Language > Kotlin' 카테고리의 다른 글
ViewModelScope 알아보기 (1) | 2025.02.25 |
---|---|
GlobalScope 알아보기 (0) | 2025.02.17 |
Structured Concurrency in Coroutines (1) | 2025.01.19 |
Coroutines 여러 개로 연산 속도 높이기 (1) | 2024.11.22 |
Java, Kotlin Interoperability 해결하기 (0) | 2024.11.18 |