3. 동기와 비동기
1. 일반적인 맥락에서의 동기(Sync)
영상을 보다가 자막이 영상보다 빠르거나 늦게 출력되는 경우, ‘싱크(Sync)가 안맞는다’라는 말을 사용함
이때의 싱크는 sync를 의미하는데, sysnchronous의 줄임말로서, ‘동기’ 혹은 ‘동시에 일어나는, 동기(同 한 가지 동, 期 기다릴 기)’ 이라는 의미를 갖고 있음
2. 프로그래밍에서의 동기(Sync)와 비동기(Async)
2-1. 동기, Synchronous
이전 작업이 다 수행되지 않을 경우, 다음 작업은 수행하지 못하는 상태(Blocking)
ex.
로그인 버튼 클릭 시 화면이 새로고침 되면서 로그인 화면으로 전환 되어야 할 때,
로그인 화면으로 이동하는 동안 사용자는 해당 화면이 나올 때 까지 다른 동작을 할 수 없게 됨 (만약 다른 동작을 할 경우 해당 화면을 불러오는 작업이 취소되기 때문에)
2-2. 비동기, Asynchronous
이전 작업의 수행 여부에 상관없이 다음 작업은 개별로 수행(Non-Blocking)
비동기 방식은 코드의 처리 순서가 보장되지 않는 대신, 동기 방식에 비해 결과 페이지가 응답되는 시간 동안 사용자는 다른 작업을 할 수 있다는 장점이 있음

Last updated on