티스토리 뷰

Back-end/JAVA

Lock

지나짱-* 2023. 1. 30. 20:18

Lock은 병행성(Concurrency) 문제를 해결하기 위해 사용하는 기술이다.

 

어떤 자원에 대한 접근을 단일 스레드에서만 허용하는 것으로, 다른 스레드가 같은 자원에 접근하려 할 때 대기 상태로 둔다.

Java에서 Lock은 java.util.concurrent.locks 패키지에 포함된 Lock 인터페이스를 사용하여 구현할 수 있다.

 

Lock 인터페이스는 기본적인 lock 기능을 제공하는 lock()과 unlock() 메서드를 가지고 있다.

tryLock()메서드를 사용하면 현재 lock을 얻을 수 있는지 확인 할 수 있다.

 

ReentrantLock, ReentrantReadWriteLock, StampedLock은 Lock 인터페이스를 구현한 구현체로 자세한 내용은 각각의 javadoc 참고 할수 있다.

'Back-end > JAVA' 카테고리의 다른 글

Lock - ReentrantReadWriteLock  (0) 2023.01.30
Lock - ReentrantLock  (0) 2023.01.30
Exception의 종류와 발생원인  (0) 2022.12.12
Optional 활용  (0) 2022.12.11
통합 테스트(Integration Test)  (0) 2022.12.04
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함