학부 수업 내용을 필기한 내용입니다. 필자가 이해를 제대로 못하고 정리한 경우 틀린 내용이 있을 수 있습니다. 그러한 부분이 있다면 댓글로 이야기하여 수정하게 해 주시면 감사하겠습니다. 이번에는 LOCK에 대한 기본적인 개념과, LOCK 구현의 평가기준에 대해 알아볼 것이다. 저번 포스팅에서 여러 스레드가 4번 라인을 실행하려 할 때 Race Condition이 발생한다고 했다. 그 이유는 이와 같이 4번 라인의 과정이 Atomic 하지 않기 때문이다. 그 결과 Indeterminate가 된다. 이러한 문제를 해결하기 위해서 나온 것이 바로 LOCK이다. 위의 코드를 보면 기존 Critical Section의 위아래로 새로운 코드가 추가되어있다. 이것이 LOCK인데, 이러한 처리를 해 줌으로써 하나의 스..