인프런 커뮤니티 질문&답변
BankAccountV5 lock.unlock() 작성 여부
작성
·
279
0
BankAccountV5에서 lock.tryLoc()을 사용하는 경우, lock을 얻지 못하면 WAITING하지 않고 바로 return false;하므로 finally { lock.unlock(); }라는 코드가 필요 없을 것이라 생각했는데 이 코드가 꼭 필요한 코드인가요?
퀴즈
51%나 틀려요. 한번 도전해보세요!
스레드가 `synchronized` 블록에 들어가기 위해 기다리는 상태(Blocked)일 때, 인터럽트될 수 있나요?
네, 즉시 깨어납니다.
아니요, 인터럽트를 무시하고 계속 기다립니다.
일정 시간 기다린 후 깨어납니다.
다른 스레드가 `notify()`를 호출해야 깨어납니다.
답변 1
2
김영한
지식공유자
안녕하세요. 도토리님 🙂
진입에 실패한다면 어차피 해당 코드가 호출되지 않습니다.
하지만 만약 진입에 성공한다면 어떻게 될까요? 이 부분도 함께 고려해야 합니다.
감사합니다.





