SpinLock
·
서버/공부
SpinLock멀티스레드 환경에서 동기화를 관리하기 위해 사용되는 락(잠금) 메커니즘공유 자원에 접근하려는 여러 스레드 중 하나만 접근하도록 보장하지만, 대기 중인 스레드가 CPU를 사용하면서 반복적으로 락 상태를 확인하는 방식 user level에서 발생하는 동기화방법 [동작 방식]1. 락이 풀려있다면 락을 획득하고, 자원을 사용. 락이 걸려 있다면, 다른 스레드가 락을 풀 때까지 계속 반복해서 락 상태 확인2. 스핀(반복), 락이 풀릴 때까지 기다리면서 반복적으로 상태를 확인하기 때문에 spinlock.3. 자원을 사용한 스레드는 락을 해제하여 다른 슬드가 자원에 접근할 수 있도록 함 [장점]: 시스템 호출을 통해 커널 모드로 전환하는 [[#Mutex Lock]] 에 비해 오버헤드가 적음 락이 ..