반응형
출처 : https://stackoverflow.com/questions/31166594/socket-python-recvfrom
소켓 파이썬 : recvfrom
저는 파이썬의 socket.recvfrom이 blocking 함수인지 알고 싶습니다. 그렇지 않다면 문서에서 답변을 찾을 수 없었습니다. 수신 받은 게 없다면 무엇이 리턴되나요? 빈 문자열 '' 인가요? 다른 경우, 사실 blocking이라면 이를 unblocking 함수로 어떻게 변경할 수 있나요? 저는 settimeout에 관해 들었지만 이것이 올바른 해결책인지는 모르겠습니다.
1개의 답변
기본적으로 그것은 blocking입니다. socket.setblocking(0)
또는 (같은 의미인) socket.settimeout(0)
을 통해 non-blocking으로 바뀔 수 있습니다. 이 경우 받은 패킷이 없다면 socket.error
예외가 발생합니다.
다음 문서를 확인하세요.
https://docs.python.org/ko/3/library/socket.html#socket.socket.setblocking
반응형
'Python' 카테고리의 다른 글
파이썬 모듈의 버전 확인하는 방법 (0) | 2022.06.19 |
---|---|
Python에서 멀티캐스트 프로그래밍 (0) | 2022.06.12 |
quickfix에서 시퀀스 번호 리셋 (0) | 2022.04.14 |
어떻게 변수가 존재하는 지 체크하나요? (0) | 2022.03.28 |
파이썬 2.7 예외 처리 구문 (0) | 2022.03.19 |