본문 바로가기
Kotlin/공부노트

Coroutine - 3. job, join

by ESHC 2022. 3. 17.

job

launch는 job을 반환한다. job 객체를 통해 launch가 종료될 때까지 기다릴 수 있다. 반환받은 job을 따로 실행하지 않아도 원래의 launch처럼 실행된다. job.join()가 없다면 Hello 이후 Done 이후 job이 실행되지만 job.join()을 통해 Hello 이후 job이 종료될 때까지 기다렸다가 종료되고 Done이 나온다. 

val job = launch { // launch a new coroutine and keep a reference to its Job
    delay(1000L)
    println("World!")
}
println("Hello")
job.join() // wait until child coroutine completes
println("Done")

 

Coroutines ARE light-weight

https://kotlinlang.org/docs/coroutines-basics.html#coroutines-are-light-weight

 

Coroutines basics | Kotlin

 

kotlinlang.org

굉장히 많은 코루틴을 만들 수 있다.

 

 

 

 

댓글