[go: nahoru, domu]

본문으로 이동

락 (컴퓨터 과학)

위키백과, 우리 모두의 백과사전.
인쇄용 판은 더 이상 지원되지 않으며 렌더링 오류가 있을 수 있습니다. 브라우저 북마크를 업데이트해 주시고 기본 브라우저 인쇄 기능을 대신 사용해 주십시오.

컴퓨터 과학에서 (lock) 또는 뮤텍스(mutex, 상호 배제에서)는 여러 스레드를 실행하는 환경에서 자원에 대한 접근에 제한을 강제하기 위한 동기화 매커니즘이다. 잠금이라고도 한다.[1] 락은 상호 배제 동시성 제어 정책을 강제하기 위해 설계된다.

유형

일반적으로 락은 일치 데이터에 접근하기 전에 락을 획득함으로써 각 스레드가 협업하는 어드바이저리 락(advisory lock)이다. 또, 일부 시스템들은 잠금된 자원에 대한 비인가 접근을 시도하면 예외를 강제하는 맨더터리 락(mandatory lock)을 구현한다.

가장 단순한 록의 유형은 바이너리 세마포어이다. 잠금된 데이터로의 배타적 접근을 제공한다. 그 밖의 스킴들은 데이터를 읽기 위한 공유 접근을 제공하기도 한다. 그 밖의 폭넓게 구현되는 접근 모드로는 exclusive(배타), intend-to-exclude, intend-to-upgrade가 있다.

데이터베이스 락

언어 지원

프로그래밍 언어는 동기화 지원 면에서 다양한 편이다:

같이 보기

각주

  1. '잠금': 네이버 국어사전”. 네이버 국어사전. 2022년 3월 10일에 확인함. 

외부 링크