blocking

· ETC
1. 강의 구성 해당 강의는 5시간 30분 정도의 강의이며 각 챕터별로 퀴즈를 제공해주고 있습니다. 이뿐만 아니라 솔루션과 함께 코딩 연습을 할 수 있도록 제공해 주는 등 강의를 듣는 사람들이 학습에 더 몰입할 수 있도록 다양한 환경을 제공해주고 있습니다. 간단한 내용부터 시작해서 점점 심화되는 내용들을 배우며 알찬 강의 구성을 가지고 있습니다. 강의의 교육 철학에도 나와 있듯이 해당 강의는 물고기를 잡아주는 것이 아닌, 낚시하는 법을 직접 배울 수 있도록 설계되어 있습니다. 2. 강의 내용 강의 제목과 같이 해당 강의는 Java에 초점이 맞춰져 있으며 멀티스레딩, 병행성 및 성능 최적화에 대한 내용을 다루고 있습니다. Java에서 Thread를 사용하는 방법, 스레드 간의 데이터 공유, 병행성 문제를 ..
· Java
1. 동시성(Concurrency)이란? 동시성은 여러 스레드가 동시에 실행될 때 발생합니다. 각 스레드는 독립적으로 작업을 수행하지만, 때때로 공유 자원(예: 데이터베이스)에 접근할 필요가 있습니다. 이때, 올바른 동시성 관리 없이 여러 스레드가 동시에 같은 자원에 접근하면 데이터 무결성을 위협하고 예측 불가능한 결과를 초래할 수 있습니다. 동시성 문제를 해결하지 못하면 데이터 불일치, 교착 상태(Deadlock), 성능 저하 등의 문제가 발생할 수 있습니다. 정확하고 효율적인 데이터 처리를 위해 이러한 문제들을 관리하는 것이 필요합니다. 2. 원자성과 가시성 1) 원자성(Atomicity) 원자성은 어떤 작업이 '전부 아니면 전혀'의 상태로만 존재한다는 원칙입니다. 은행 계좌에서 돈을 이체할 때로 예..