
[Kotlin/Coroutine] 3. launch와 async의 Job과 Deferred
launch 함수의 Job launch함수로 시작한 Coroutine은 Job 타입의 객체를 Return한다 Job은 coroutine 자체를 의미하기에, launch로 실행되는 Coroutine을 취소할 수도 있고, 기다릴 수도 있다. → 즉 LifeCycle 에 관심이 있다. async 함수의 Deferred 여기서 Deferred는 Job을 상속한 클래스이기 때문에, launch를 사용한 곳에 async를 사용해도 항상 아무 문제가 없다. async는 return할 결과값이 있는데, Deferred타입으로 객체를 return한다. Deferred는 Future처럼 미래의 결과값을 담아놓을 수 있는 객체이며 결국 미래의 결과값을 의미하므로 완료되길 기다리다가 Return되는 값에 관심이 있다. Def..