Blocking vs Non-Blocking I/O

    [Network] Blocking vs Non-Blocking & Sync vs Async 비교 정리

    💡 본 문서는 'Blocking vs Non-Blocking'과 'Sync vs Async'에 대해 정리해놓은 글입니다. network외에도 이 개념은 사용할 때도 있으나, 이 문서의 경우 네트워크 상에서 말하는 개념으로 설명하고 있으니 참고바랍니다. Blocking vs Non-Blocking I/O 다른 주체가 작업할 때 자신의 제어권이 있는지 없는지로 판단할 수 있습니다. Blocking I/O System Call이 끝날때까지 프로그램은 대기해야 하고 System Call이 완료가 되면 그때야 Return 합니다. 다시 말하면, 자신의 작업을 진행하다가 다른 주체의 작업이 시작되면 다른 작업이 끝날 때까지 기다렸다가 자신의 작업을 시작하는 것입니다. 이는 제어권이 다른 작업에 있다고 표현할 수 있..