동기화 Thread는 독자적입니다. 이 말은 즉 보통은 다른 Thread를 신경쓰지 않고 자신의 작업을 수행한다는 의미입니다. 멀티프로세서 기반의 시스템에서는 보통 여러개의 CPU에서 각각 많은 양의 Thread들이 동시다발적으로 작업을 수행합니다. 이번 포스팅에서는 이 많은 양의 Thread들이 어떻게 협업하고, 동기화 되는지, 그리고 공유 자원을 접근할 때에는 어떤 방식으로 할 수 있는지에 대해 알아보겠습니다. Lock Thread들을 동기화 할때는 락이라는 개념을 사용합니다. 이 Lock은 보통 자원을 하나의 Thread만 접근 가능하게 잠궈놓는다는 의미로 쓰입니다. 하나의 Thread가 자원을 접근하고 있을 때, 다른 Thread가 같은 자원에 접근한다면, 이 자원은 의도하지 않은대로 변경이 될 ..