임계구역(Critical Section)이란?임계구역(Critical Section) 은 둘 이상의 스레드 또는 프로세스가 동시에 접근하면 안 되는 공유 자원(변수, 메모리, 파일 등)을 접근하는 코드 영역을 의미함.여러 작업(스레드)이 이 구역을 동시에 실행하면 데이터 충돌, 레이스 컨디션(race condition), 이상 동작이 발생할 수 있기 때문에, 서로 배타적으로 접근하도록 제어해야 함.1. 왜 임계구역이 필요한가?멀티스레드 환경에서는 다음과 같은 문제가 발생함:여러 스레드가 공유 변수에 동시에 접근함한 스레드가 값을 수정하는 도중 다른 스레드가 동일 변수에 접근함결과적으로 예상치 못한 값, 데이터 손실, 프로그램 오작동이 발생함→ 이런 충돌을 막기 위해 '임계구역'을 정의하고, 한 번에 하나..