
Yar_Concurrent_Client::loop 함수는 Yar_Concurrent_Client 클래스의 주요 메서드 중 하나로, concurrent client를 구현하는 데 사용됩니다. 이 함수는 client의 요청을 처리하는 과정에서 blocking 모드와 non-blocking 모드의 차이를 설명해드리겠습니다.
Blocking 모드
Blocking 모드란, client가 요청을 서버에 보내면, 그 요청이 처리될 때까지 client는 대기 상태에 머물러 있는 것을 의미합니다. 즉, client는 요청을 보내고, 그 요청이 처리될 때까지 아무런 작업을 수행하지 못합니다.
Non-Blocking 모드
Non-Blocking 모드란, client가 요청을 서버에 보내면, 그 요청이 처리될 때까지 client는 다른 작업을 수행할 수 있는 것을 의미합니다. 즉, client는 요청을 보내고, 그 요청이 처리될 때까지 다른 작업을 수행할 수 있습니다.
Yar_Concurrent_Client::loop 함수는 non-blocking 모드를 기본적으로 지원합니다. 이 함수는 client의 요청을 처리하는 과정을 비동기적으로 처리하도록 설계되어 있습니다. 따라서 client는 요청을 보내고, 그 요청이 처리될 때까지 다른 작업을 수행할 수 있습니다.
이러한 차이점을 이해하면, concurrent client를 구현할 때 더 효율적으로 요청을 처리할 수 있습니다.
2025-04-23 15:03