동시성1 실용주의 프로그래머 TIL(22.03.30) 오늘의 책 읽기 6장 동시성 오늘의 TIL 소프트웨어 아키텍처에서 시간이라는 측면이 자주 무시되는데, 동시성(동시에 일어나는 일들)과 순서(시간의 흐름 속에 일들의 상대적인 위치)다. 보통 설계를 할 때, 'A를 하고 B를 하고 ~' 등등과 같이 명령형으로 코드를 설계하게 된다. 하지만 이런 식으로 생각하다보면 시간적 결합을 만들게 된다. 동시성을 확보하기 위해서는 시간이나 순서에 의존하는 시간적 결합을 끊어내야 하고, 이를 통해 유연성, 작업흐름분석, 아키텍처, 설계, 배포와 같은 여러 측면에서 시간과 관련된 의존성도 줄일 수 있다. 우리는 활동다이어그램을 통해 작업 흐름을 기록할 수 있다. 다이어그램에서 동기화 막대를 만들어, 동기화 막대로 들어오는 활동이 모두 완료된 후에야 진행할 수 있도록 만들 .. 2022. 3. 30. 이전 1 다음