blocking io : 호출된 함수가 자신의 작업을 모두 끝낼 때까지 제어권을 갖고 있어 호출한 함수가 대기하도록 만든다.
non blocking io : 호출된 함수가 바로 return해서 호출한 함수에게 제어권을 주어 다른 일을 할 수 있게 한다.
☞ 호출되는 함수가 바로 리턴하느냐 마느냐가 중점
synchronous : 동기는 함수를 호출하고, 호출된 함수의 작업이 완료된 후의 return을 기다리거나 return을 받더라도 호출한 함수가 계속해서 작업완료 여부를 신경쓴다.
asynchronous : 함수를 호출할 때 callback 함수를 같이 전달해 작업이 완료되면 callback을 실행시킨다.
☞ 호출되는 함수의 작업 완료 여부를 누가 신경쓰느냐가 중점
▼한 방에 이해하기
https://musma.github.io/2019/04/17/blocking-and-synchronous.html
무스마 기술블로그
Smarter Industrial IoT Solution Provider
musma.github.io
++ node.js, flask가 어떤 방식으로 동작하는지도 알아봐야겠다...
'개발' 카테고리의 다른 글
[멀티쓰레드] semaphore, mutex 개념 (0) | 2021.08.24 |
---|---|
ELK logstash.conf - filter 주의사항 (0) | 2021.08.13 |
[python] socket과 multi-thread (0) | 2021.07.28 |
Redis 시작하기, 명령어, flask와 연동 (0) | 2021.07.16 |
[Flask-3]ORM 라이브러리 이용해 DB 연동 (0) | 2021.07.13 |
댓글