
Conncurrent Programming 여러 개의 Concurrent flow(process, thread, handler 등)이 동시에 실행되는 환경에서 작업을 수행하는 프로그래밍 패러다임. Concurrent Prgoramming은 병렬처리, 비동기 작업, 이벤트 기반 프로그래밍 등 다양한 시나리오에서 사용된다. 일반적인 순차적인 프로그래밍과는 달리 다른 문제점들이 있다. - Race condition: Concurrent flow들이 공유 데이터에 동시에 접근하고 수정할 때 발생. 경쟁 상태는 임의의 스케줄링 결정에 의존하니까 예측하기가 어렵다. - Deadlock: Deadlock은 둘 이상의 Concurrent flow가 서로가 점유하고 있는 자원을 요청하며 무한히 대기하는 상태임. - Li..