Sync(동기), Async(비동기) 와 Blocking(블로킹), Non-Blocking(논블로킹)의 차이점


Sync(동기), Async(비동기) 와 Blocking(블로킹), Non-Blocking(논블로킹)의 차이점

얼마전까지만 해도 동기, 비동기와 블로킹, 논블로킹의 차이에 대해 인지하고 있지 않았는데 다 다른것을 의미한다는 것을 알게되었고 좀 더 명확하게 알고자 정리를 하게 되었다. 간단하게 정리를 하자면 두가지의 큰 차이점은 동기/비동기는 프로세스의 수행 순서에 대한 이야기인 반면 블로킹/논블로킹은 입출력(프로세스 유후 상태)에 대한 이야기이다. 동기와 비동기 동기와 비동기는 함수의 제어권과는 관련없이 함수의 동작순서에 초점을 맞춘것이다. 동기 (Synchronized) 먼저 동기를 살펴보자. 동기의 단어의 뜻을 살펴보면 同期 같은 시기, 또는 같은 기간 라는 뜻을 가지고 있다. 즉, 데이터의 요청과 응답이 동시에 일어난다는 뜻이다. 호출하는 A가 호출되는 B가 끝날때까지 신경을 쓰고있다면 이것은 동기함수이다...


원문링크 : Sync(동기), Async(비동기) 와 Blocking(블로킹), Non-Blocking(논블로킹)의 차이점