select1 논블로킹(Non-blocking) 소켓 만들기 | ioctlsocket, select Winsock을 기준으로 설명합니다. 혹시나 틀린 부분이 있을 수 있으니 맹신은 마시고 있다면 알려주세요~ 소켓 관련 함수에 타임 아웃을 지정하고 싶다면 비동기 소켓 + select 함수가 필요합니다. 해당 글을 전부 읽으시면 됩니다. 기본적으로 Winsock의 accept, connect, recv, send와 같은 대부분의 소켓 관련 함수들은 호출 스레드를 블로킹(blocking) 상태로 만듭니다. 블로킹 상태란 현재 스레드가 더 이상 코드를 진행하지 않고 block 상태로 멈춰 있는 상태를 말합니다. 블로킹 상태는 각 조건을 만족하거나 타임 아웃이 될 때까지 유지됩니다. 이해하기 어려우면 그냥 조건을 만족할 때까지 함수를 벗어나지 않고 기다린다고 생각하면 편합니다. accept 함수는 클라이언트의 .. 2020. 10. 22. 이전 1 다음