Coroutine 3

Kotlin coroutine : async vs launch 차이

async vs launch async 결과를 반환하는 코루틴을 시작하는데 사용 예외(Exception)가 발생할 경우 결과를 반환에 포함한다. 결과 또는 예외를 포함하는 Deferred를 반환 launch 결과를 반환하지 않는 코루틴을 시작하는데 사용 본인 혹은 자신 코루틴의 실행을 취소하기위해 사용할 수 있는 Job을 반환 Job: Fire and forget Job Job은 생성될때 기본적으로 자동 시작된다. 하지만, 이를 자동시작 되지 않게하려면 CoroutineStart.LAZY를 사용할 수 있다. Job join() vs start() join: Job을 완료할때까지 대기한다. start: 애플리케이션이 Job이 완료될때까지 기다리지 않는다. Job의 라이프 사이클 New: 생성됨 Active..

[Kotlin] Channel이란?

원문: https://proandroiddev.com/kotlin-coroutines-channels-csp-android-db441400965f원문을 읽으면서 제가 이해하기 위해 번역한 것입니다.개념만 남기고 예제는 거의 뺐으니 예제를 보시려면 여기로~ Channels Channel은 2개의 Coroutine 사이를 연결한 파이프라고 생각하면 된다.이 파이프는 두 Coroutine 사이에서 정보를 전송할 수 있도록 한다.하나의 Coroutine은 파이프를 통해서 정보를 보낼 수 있고, 다른 하나의 Coroutine은 정보를 받기위해 기다린다. 채널이라는 말을 일상생활에서는 TV에서 제일 많이 쓰는데..채널을 통해서 우리는 방송국에서 쏴주는 방송을 본다. (일방적 커뮤니케이션)사진에서 1번 Corouti..