01. [Basic] 1부.코루틴과 동시성 프로그래밍 1-0 처음만나는코루틴 코루틴이란 ? - 실행의 지연과 재개를 허용하면서, 비 선점적 멀티테스킹을 위한 설계 패턴. 코루틴은 비 선점형 멀티태스킹이고, 쓰레드는 선점형 멀티태스킹이다. 이 말은 즉 코루틴은 병행성(Concurrency)을 제공하지만 병렬성(Parallelism)을 제공하지 않는 다는 의미이다. 아니 그럼 병행성과 병렬성의 차이는 무엇인가? 병행성(Concurrency) 동시에 실행되는 것처럼 보이는 것. Logical Level에 속한다. Single Core 사용 물리적으로 병렬이 아닌 순차적으로 동작할 수 있다. 실제로는 Time-sharing으로 CPU를 나눠 사용함으로써 사용자가 Concurrency를 느낄 수 있도록 한다. 병..