일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- Unsupported metadata version. Check that your Kotlin version is >= 1.0: java.lang.IllegalStateException
- 백준 2615
- Android Custom View
- runCatching
- hilt
- 스레드 vs 코루틴
- 안드로이드 커스텀 뷰
- Android Compose
- 안드로이드 컴포즈
- 코틀린 에러 핸들링
- 백준
- RecyclerView Sticky Header
- viewmodel
- 안드로이드 무한 스크롤
- 코루틴
- Sticky Header RecyclerView
- 코루틴 공식문서
- power menu
- Thread vs Coroutine
- Coroutine
- Kotlin Serialization
- BOJ
- Hilt 에러
- 힐트
- AAC ViewModel
- android compose orbit
- android orbit
- 코루틴 공식 문서
- power menu 라이브러리
- Android Compose Navigation
- Today
- Total
목록Coroutine (6)
Beeeam

https://kotlinlang.org/docs/flow.html Asynchronous Flow | Kotlin kotlinlang.org Buffering 오래 걸리는 비동기 작업이 관련된 플로우의 경우 해당 플로우의 로직을 다른 코루틴에서 실행하는 것이 플로우 수집에 걸리는 전체 시간의 관점에서 도움이 된다. 예를 들어 방출하는데 100ms가 걸리고 플로우의 각 요소를 수집하는데 300ms씩 걸린다고 하자 fun simple(): Flow = flow { for (i in 1..3) { delay(100) emit(i) } } fun main() = runBlocking { val time = measureTimeMillis { simple().collect { value -> delay(300)..

https://kotlinlang.org/docs/flow.html Asynchronous Flow | Kotlin kotlinlang.org suspend 함수는 한 개의 값을 비동기적으로 실행하면서 반환한다. 그러면 여러 개의 값을 반환하려면 어떻게 해야 할까? 이 때 코루틴 플로우(Coroutine flow)를 사용하면 여러 개의 값을 반환할 수 있다. Representing multiple values 코틀린에서는 컬렉션을 사용하여 다수의 값을 나타낼 수 있다. 3개의 숫자를 요소로 갖는 리스트를 반환하는 함수를 main 함수에서 forEach 함수를 사용하여 이 리스트의 모든 값들을 출력할 수 있다. fun simple(): List = listOf(1, 2, 3) fun main() { sim..

https://kotlinlang.org/docs/coroutine-context-and-dispatchers.html#dispatchers-and-threads Coroutine context and dispatchers | Kotlin kotlinlang.org Coroutine Context는 다양한 요소로 이루어진 집합이다. 여기서 주요한 요소들은 coroutine job 객체와 dispatcher이다. (Coroutine Context 안에는 Coroutine job이랑 dispatcher 등 다양한 요소들이 들어있다.) Dispatchers and threads Coroutine Context는 dispatcher를 포함한다. Dispatcher는 해당 코루틴이 실행에 사용하는 스레드를 결정한..

https://kotlinlang.org/docs/composing-suspending-functions.html Composing suspending functions | Kotlin kotlinlang.org 이 섹션에서는 suspend 함수의 구성에 다양한 접근법들을 다룬다. Sequential by default 코루틴의 코드는 일반적인 코드와 마찬가지로 순차적 호출을 사용한다. fun main() = runBlocking { val time = measureTimeMillis { val one = doSomethingUsefulOne() val two = doSomethingUsefulTwo() println("The answer is ${one + two}") } println("Complet..

https://kotlinlang.org/docs/cancellation-and-timeouts.html Cancellation and timeouts | Kotlin kotlinlang.org 코루틴에서 실행되는 모든 중단 함수들은 취소 요청에 응답을 할 수 있어야 한다. 그러면 코드 실행중 취소 요청이 있는지를 반복적으로 확인해야 하는데 코루틴은 이러한 취소 요청에 대응할 수 있도록 구현이 되어 있다. 취소 요청에 대응하여 코루틴이 취소 되면 CancellationException을 발생 시키면서 종료를 한다. Cancelling coroutine execution (코루틴 실행 취소) 애플리케이션이 장시간 동안 실행되고 있으면 백그라운드의 코루틴들을 관리해야 할 필요가 생긴다. 예를 들어 사용자가 ..

안드로이드 면접 스터디를 진행하면서 코루틴에 대해서 공부하게 되었는데 이를 정리해보려고 한다. 참고로 코루틴 공식 문서를 참고하여 공부하였다. https://kotlinlang.org/docs/coroutines-basics.html Coroutines basics | Kotlin kotlinlang.org 코루틴? 코루틴은 비동기적으로 실행되는 코드를 간소화 하기 위해 사용되는 설계 패턴이다. 스레드와 개념적으로는 비슷하지만 코루틴은 특정 스레드에 포함되지 않는다. 그리고 코루틴은 스레드보다 더 가벼울 수 있다. fun main() = runBlocking { // this: CoroutineScope launch { // launch a new coroutine and continue delay(10..