JVM 동시성 프로그래밍 딥다이브 6-1. Synchronization Fundamentals 동기화 기법 - Mutual Exclusion (상호배제)
·
기술 학습/JVM 스레드 딥다이브
개요Mutual Exclusion / 상호배제는 공유 자원에 대한 경쟁 상태를 방지하고 동시성 제어를 위한 ["락/Lock"] 매커니즘이다.스레드가 임계영역에서 Mutex 객체의 플래그를 소유하고 있으면 (락 획득) 다른 스레드가 액세스할 수 없으며 해당 임계 영역에 액세스 하려고 시도하는 모든 스레드는 차단된다. Mutex 객체 플래그가 해제된 경우 (락 해제)에만 액세스할 수 있다.Mutex 락을 가진 오직 한개의 스레드만이 임계영역에 진입할 수 있고 락을 획득한 스레드만이 락을 해제할 수 있다.Mutext뮤텍스는 락/락 해제를 통해 자원을 보호하는 락체계 동기화 도구이다.문제점데드락데드락은 두 개 이상의 스레드가 서로가 가진 락을 기다리면서 상호적으로 블로킹 되는 경우.이로 인해 아무 작업도 수행할..