


동기 및 비동기 실행 이해
동기란 여러 작업이나 프로세스가 동시에 실행되지만 서로 연결되어 이전 작업이 완료될 때까지 다음 작업을 시작할 수 없음을 의미합니다. 즉, 작업은 순서대로 실행되고 각 작업은 시작되기 전에 이전 작업이 완료될 때까지 기다립니다.
예를 들어 작업 A와 B가 있고 작업 A가 작업 B의 완료에 따라 달라지는 경우 작업 A는 작업 B에 대해 동기적입니다. 이는 작업 B가 완료될 때까지 작업 A가 시작되지 않으며, 작업 B가 완료되면 작업 A가 시작됨을 의미합니다. 작업은 특정 순서로 완료되거나 진행하기 전에 일부 외부 이벤트가 발생할 때까지 기다려야 하는 경우입니다. 그러나 작업이 적절하게 최적화되지 않으면 병목 현상이 발생하고 성능이 저하될 수도 있습니다.
대조적으로 비동기 실행을 사용하면 여러 작업을 동시에 실행할 수 있지만 둘 사이에 명시적인 종속성은 없습니다. 이는 다른 작업의 상태에 관계없이 각 작업이 준비되는 즉시 시작할 수 있음을 의미합니다. 비동기 실행은 동기 실행보다 더 효율적이고 확장 가능하지만 관리 및 디버깅이 더 복잡할 수도 있습니다.



