분류 전체보기

    Coroutines 취소 1편 - Coroutine 실행 취소하기, Coroutines 취소는 협력적이다, Coroutine의 Computation 코드를 취소 가능하게 만들기

    Coroutines 취소 1편 - Coroutine 실행 취소하기, Coroutines 취소는 협력적이다, Coroutine의 Computation 코드를 취소 가능하게 만들기

    이 섹션은 코루틴 Cancellation과 Timeout에 대해 다룹니다. Coroutine 실행 취소하기 긴 시간동안 실행되는 어플리케이션에서 백그라운드에서 실행되는 Coroutine에 대한 세밀한 제어가 필요할 수 있다. 예를 들어, 유저가 Coroutine을 실행시킨 페이지를 닫아 결과가 더 이상 필요하지 않아 작업이 취소되어도 되는 경우이다. launch 함수는 실행중인 코루틴을 취소하는 데 사용할 수 있는 Job 객체를 반환한다. import kotlinx.coroutines.* fun main() = runBlocking { val job = launch { repeat(1000) { i -> println("job: I'm sleeping $i ...") delay(500L) } } dela..

    Coroutines 기초 알아보기 2편 - Coroutines Scope Builder 사용하기, Coroutine Job 명시적으로 사용하기, Coroutines는 light-weight 이다

    Coroutines Scope Builder 사용하기 coroutineScope builder은 일시 중단 함수 내부에서 복수의 동시 작업을 수행하기 위해 사용될 수 있다. doWorld 일시 중단 함수 내부에서 두 개의 동시에 수행되는 코루틴을 실행해보도록 하자. import kotlinx.coroutines.* // doWorld와 "Done"을 순서대로 실행합니다. fun main() = runBlocking { doWorld() println("Done") } // 두 섹션들을 모두 동시적으로 실행합니다 suspend fun doWorld() = coroutineScope { // this: CoroutineScope launch { delay(2000L) println("World 2") } l..

    Coroutines 기초 알아보기 1편 - 첫 Coroutines 작성하기, 함수 추출해 Coroutines 코드 리펙토링하기, Coroutines Scope Builder 사용하기

    Coroutines 기초 알아보기 1편 - 첫 Coroutines 작성하기, 함수 추출해 Coroutines 코드 리펙토링하기, Coroutines Scope Builder 사용하기

    첫 Coroutine 작성하기 이 섹션에서는 Coroutine의 기본 개념에 대해 다룹니다. 당신의 첫 번째 coroutine Coroutine은 일시정지 연산을 위한 인스턴스이다. 이것은 코드의 나머지 부분들과 동시에 실행되는 코드 블록을 가진다는 점에서 스레드와 개념적으로 비슷하다. 하지만, 코루틴은 특정한 스레드에 종속되어 실행되지 않으며, 하나의 스레드에서 일시정지(suspend) 되었다가 다른 스레드에서 재개(resume)될 수 있다. Coroutines는 경량 스레드로 생각될 수 있지만, 실제 사용을 스레드와 다르게 만드는 여러 다른 점들이 있다. 다음 코드를 실행하여 동작하는 첫 Coroutine을 만들어 보자. import kotlinx.coroutines.* fun main() = run..

    Kotlin Coroutines 공식 문서 한국어 번역본

    아래 링크에서 역주가 없는 버전을 확인하실 수 있습니다. Published on Web: https://seyoungcho2.github.io/CoroutinesKoreanTranslation/ Kotlin Coroutines 공식 문서 번역을 시작하며 Kotlin Coroutines는 Kotlin을 위한 강력한 비동기 솔루션이다. 안드로이드 실무에서는 한동안 높은 점유율을 자랑한 RxJava를 Coroutines가 대체하고 있으며, 새로 시작하는 프로젝트들은 모두 Coroutines를 사용하고 있다. 그 이유는 Coroutines의 성능과 간결성, 가독성에 있다. Coroutines는 기존 스레드 모델들과 다른 경량 스레드(Light Weight Thread)라는 개념을 도입 하여 불필요한 Thread..

    [안드로이드를 위한 Coroutines] 책 소개

    들어가며 Kotlin Coroutines는 Kotlin을 위한 강력한 비동기 솔루션이다. 안드로이드 실무에서 한동안 높은 점유율을 자랑한 RxJava가 Coroutines로 대체 되었고, 새로 시작하는 안드로이드 프로젝트들은 대부분 Coroutines를 사용하고 있다. 안드로이드의 공식언어가 Kotlin인데, Kotlin의 비동기 솔루션으로 Coroutines가 채택되었으므로 이후의 동시성 프로그래밍은 Coroutines를 기반으로 만들어질 것임을 알 수 있다. Coroutines의 강점 Coroutines가 Kotlin의 주요한 비동기 솔루션이 될 수 있던 이유는 Coroutines의 성능, 안정성 때문이다. Coroutines는 기존 비동기 라이브러리들이 채택한 스레드와 스레드풀 기반 비동기 프로그래..