본문 바로가기
공부해볼것 간단정리

Blocking/NonBlocking, Synchronous/Asynchronous

by Developer RyanKim 2021. 5. 16.

Blocking/NonBlocking, Synchronous/Asynchronous

Caller - Callee 관점에서 간단 요약

 

Blocking/NonBlocking

Callee 가 바로 return 되는지 여부에 따라 갈림
Callee 가 바로 return 되면, Caller 에게 제어권이 넘어가 다른일을 할 수 있게 된다.

Blocking : 끝날때까지 바로 return X. Caller 는 대기.
NonBlocking : 바로 return. Caller는 대기하지 않고 다른일 수행

Caller가 대기하며 CPU를 점유해놓고 쓰지않는 경우를 방지하려면 Non-Blocking 잘 쓰자.


Synchronous/Asynchronous

Callee 작업 완료 여부를 판단하는 주체에 따라 갈림

Asynchronous : Caller 는 Callee의 작업완료 여부를 신경쓰지 않음.
Callee에 callback을 전달해서, 작업완료 후 Callee 가 전달받은 callback을 실행

Synchronous : Caller 가 Callee의 return 을 기다림. 혹은 Callee의 작업완료 여부를 반복적으 돌며 확인.

'공부해볼것 간단정리' 카테고리의 다른 글

Service Mash/ Istio / envoy  (0) 2021.05.19
SSL인증서 레벨 (DV OV EV)  (0) 2021.05.16
MDC(Mapped Diagnostic Context)  (0) 2021.05.16

댓글