Blocking
OS가 작업을 끝낼 때까지 유저프로세스가 작업을 하지않고 대기하는 것
None-Blocking
OS에 작업을 부탁하고 유저프로세스는 다른 작업을 하는 것
작업 처리전에 대기의 유무에 차이가 있다.
블로킹 작업은 순차적으로 작업이 처리되기 때문에 "동기처리"라고도 한다.
작업간의 처리 순서가 유지되어야 하기 때문에 대기시간이 반드시 발생하게 된다.
비동기 처리란 작업을 동기화하지 않고 처리하는 것을 말한다.
논블로킹도 동기화하지 않고 작업을 처리하기 때문에 넓은 의미에서 보면 비동기처리라고 볼수 있으나, 작업완료를 응답유무에서 차이가 있다.
비동기처리는 동기처리와는 다르게 작업이 끝나면 끝났다고 응답이 온다. (동기처리는 유저프로세스가 작업이 끝났냐고 물어본다.)
논블로킹은 작업완료에 대한 응답은 없고, 처리가 완료되지 못할 경우 에러를 받게 된다.
잘 정리되어서 이해하기 좋았습니다!