Compose LocalCollectAsStateCoroutineContext
·
Android
Dove Letter의 25년 2월 3일 아카이빙 된 내용 중 흥미로운 글을 발견했다. compose에서 상태를 UI에 바인딩할 때 사용되는 API 중 하나인 CollectAsState( )가 Dispatchers.Main를 사용하고 있다. 이로 인해 상태를 상태를 디스패치하는 과정에서 UI에 도달할 때마다 비동기적으로 상태를 전달하기 때문에 새로 업데이트된 상태와 UI의 동기화 문제가 발생할 수 있다. 이 문제는 context 인자에 Dispatcers.Main.immediate를 전달함으로써 해결할 수 있다. 하지만 2025년 2월 5일 기준으로 이 문제를 위해 추가된 API가 있다 하니 간단하게 알아보자.val uiState = viewModel.uiState.collectAsState(Dispa..