dailyrium
/find

[태그:] synchronized

· 13 min read

Java 멀티스레딩 실전 가이드 – synchronized·volatile·ReentrantLock 완전 비교

Java 멀티스레딩은 백엔드 개발자라면 반드시 넘어야 할 관문입니다. “synchronized와 ReentrantLock의 차이가 뭔가요?”, “volatile은 언제 쓰나요?” — 이 질문들은 자바 개발자 면접에서 중급 이상을 가르는 기준선입니다. 단순히 키워드를 암기하는 것과, 내부 동작 원리를 이해하고 상황에 맞게 선택할 수 있는 것은 전혀 다른 수준입니다. 이 글에서는 세 가지 동기화 메커니즘의 개념·동작 원리·실전 코드·트레이드오프를 한 번에 정리합니다. 목차 […]

· 6 min read

Java Vector 동기화의 함정 — 실무에서 더 이상 쓰이지 않는 진짜 이유

자바를 배운 지 얼마 안 됐을 때, “멀티스레드 환경에서 안전한 리스트가 필요하면 Vector를 쓰면 된다”는 말을 들어본 적 있으신가요? 그런데 막상 현업에 나와보면 Vector를 쓰는 코드를 거의 볼 수 없습니다. Java Vector 동기화 방식이 처음에는 훌륭해 보이지만, 실제 서비스 환경에서는 심각한 성능 문제와 구조적 결함을 드러내기 때문입니다. 이 글에서는 왜 Vector가 외면받는지, 그리고 지금 당장 무엇으로 교체해야 […]