-
동기화(Synchronous) vs 비동기화(Asynchronous)cs 2023. 2. 9. 21:54
동기화 (Synchronous, 동시에 일어난다)
- 어느 메소드가 실행하고 있으면 다른 메소드가 접근하는것을 제한하는 것이다.
- 동시 접근이 불가능하므로 순차적으로 접근하게 된다.
- 서버와 클라이언트가 주고 받는 것이 동시에 이루어진다. -> 요청과 결과가 동시에 일어난다.
- 한 메소드가 실행되는동안 다른 메소드를 실행할 수 없기 때문에 버퍼링 시간이 생긴다.
동기화 장점 : 설계가 간단하고 명료하다.
동기화 단점 : 결과가 주어질 때까지 아무것도 못하고 대기해야 한다.
비동기화 (Asynchronous, 동시에 일어나지 않는다)
- 어느 메소드가 종료 되지 않아도 다른 메소드 실행이 가능하다.
- 서버와 클라이언트가 주고 받는 것이 동시에 이루어지지 않는다.
- 버퍼링이 적다.
비동기화 장점 : 동기화 방식보다 설계가 복잡하다.
비동기화 단점 : 결과가 주어지지 않더라고 다른 작업을 수행할 수 있기 때문에 동기화 방식보다 효율적이다.
'cs' 카테고리의 다른 글
스레드(Thread) vs 프로세스(Process) (0) 2023.02.28