목록Kotlin/Kotlin Coroutine (2)
시배's Android
제 생각에 Kotlin 코루틴을 사용할 때 해야 할 일과 하지 말아야 할 일(또는 최소한 피해야 할 일) 몇 가지에 대해 글을 쓰기로 결정했습니다. Wrap async calls with coroutineScope or use SupervisorJob to handle exceptions ❌ async 블록이 예외를 발생시킬 수 있는 경우 try/catch 블록으로 감싸는 것에 의존하지 마세요. val job: Job = Job() val scope = CoroutineScope(Dispatchers.Default + job) // may throw Exception fun doWork(): Deferred = scope.async { ... } // (1) fun loadData() = scope.la..

Kotlin Coroutine과 스레드 활성화 Kotlin의 강력한 비동기 프로그래밍 도구인 Coroutine은 스레드를 효율적으로 관리하여 비동기 작업을 수행할 수 있도록 돕습니다. 이번 포스트에서는 10,000개의 Coroutine을 실행했을 때 활성화된 스레드 수를 알아보도록 하겠습니다. import kotlinx.coroutines.* import kotlin.system.measureTimeMillis suspend fun createCoroutines(amount: Int) { val jobs = ArrayList() for (i in 1..amount) { jobs += GlobalScope.launch { delay(1000) } } jobs.forEach { it.join() } } fu..