개발

동기/비동기 블로킹/논블로킹 차이

ka0oll 2020. 4. 15. 23:43

동기 비동기

동시성 개념

 

동기

한쓰레드에서 순차적으로 실행, 호출에 대한 결과를 계속 기다림

 

비동기

동시에 실행됨, 

 

블로킹/논블로킹

함수(메소드)가 바로 리턴되느냐의 의미이다.

 

블로킹 : 함수 호출후 블로킹됨

 

논블로킹 : 함수 호출후 바로 리턴됨

 

 

조합

동기/블로킹 :  메소드 호출도 블로킹되고 동기작업됨

동기/논블로킹 : 메소드 호출은 리턴됬지만 콜백이 올때까지 다른작업 못함

비동기/블로킹 : 메소드 호출이 블로킹되었지만 다른작업은 동시에 진행함

비동기/논블로킹 : 메소드 호출도 리턴되고 동시에 다른작업도 진행

 

참조 https://jins-dev.tistory.com/entry/%EB%8F%99%EA%B8%B0Synchronous-%EC%9E%91%EC%97%85%EA%B3%BC-%EB%B9%84%EB%8F%99%EA%B8%B0Asynchronous-%EC%9E%91%EC%97%85-%EA%B7%B8%EB%A6%AC%EA%B3%A0-%EB%B8%94%EB%9D%BDBlocking-%EA%B3%BC-%EB%84%8C%EB%B8%94%EB%9D%BDNonBlocking-%EC%9D%98-%EA%B0%9C%EB%85%90