Multi Thread 일반적으로 하나의 프로세스는 하나의 스레드를 가지고 작업을 수행한다. 멀티 쓰레드는 당연하게도 둘 이상의 스레드가 동시에 작업하는 것을 의미한다. 그리고 멀티 프로세스(Multi Process)는 여러 개의 CPU를 사용하여 여러 프로세스를 실행하는 것을 의미한다. 멀티 프로세스는 각 프로세스가 독립적인 메모리를 가지고 동작하지만, 멀티 스레드는 각 스레드가 자신이 속한 프로세스의 메모리를 공유한다는 점에서 차이가 있다. Context Switching 컴퓨터에서 동시에 처리할 수 있는 최대 작업 수는 CPU의 코어 수와 동일하다. 만약 CPU의 코어 수보다 많은 스레드가 실행 된다면 각 코어가 정해진 시간동안 여러 작업을 번갈아 가면서 수행하게 된다. 이때 각 스레드가 작업을 번..