www.youtube.com/watch?v=IEEhzQoKtQU 위는 영어로 된 동영상인데, 영어만 알아듣는다면 굉장히 좋다... 일단 동시성(Concurrency)와 병렬(Parellism)을 구분할 수 있어야 한다. 동시성은, Multithreading을 포함한 asyncronous 한 function들을 말한다. 하지만 암시적으로, 병렬이 아니라는 걸 말한다. 병렬은, 동시성을 포함하는 개념이며, 여러 코어에 프로세스가 돌아갈 수 있게 한다. 즉, 동시성은 한 코어에서 여러 개의 쓰레드가 돌아가는 걸 얘기하지만 병렬은 여러개의 코어 각각에서 각각의 프로세스가 돌아가는 걸 얘기한다. 즉, 동시성은 실제로 cpu가 많이 소모되는 일을 할 때에는 많은 속도향상을 하진 못하고, 그걸 하려면 병렬 프로그래밍..