반응형
안녕하세요. 크리에이트메이커 입니다 !! createmaker!
리눅스 -> 윈도우 로 바꿔달라는 의뢰를 작업하던중...
소켓에서 문제가 발생하였는데요!!!
몇시간 헤매다 문서읽고 겨우 찾았습니다.
항상 느끼는 등신같은 chatGPT...
자. 혹시 다 했는데도 알수없는 이유로 계속 타임아웃 에러가 발생할때는 이걸 봐보세요.
struct timeval timeout;
timeout.tv_sec = 10;
timeout.tv_usec = 0;
int dwTimeout = 10000;
setsockopt(m_iSock, SOL_SOCKET, SO_RCVTIMEO, reinterpret_cast<const char *>(&dwTimeout), sizeof(dwTimeout));
아마 리눅스, 유닉스 버전에서는,,
SO_RCVTIMEO 에 시간은 위 코드의 맨 위처럼
struct timeval timeout;
timeout.tv_sec = 10;
timeout.tv_usec = 0;
이렇게 지정해 주고
etsockopt(m_iSock, SOL_SOCKET, SO_RCVTIMEO, reinterpret_cast<const char *>(&timeout), sizeof( timeout ));
아놔 무야.. 왜 이레.. 암튼.. 저렇게 timeout으로 시간을 줬을겁니다.뭐여왜 이렇게나와.. ㄷ.. 암튼.. 하지만 !! 윈도우에서는 소켓옵션을 할때 !! 저 timeval 구조체가 없습니다 ㅋㅋ...
그냥 int dwTimeout 처럼 int형 변수 하나 추가해서 밀리세컨드로 가정하고 숫자 넣고 위 제공한 코드처럼 넣어주면 됩니다.멍청한 chatGPT에 물어보고 구글링해서도 하다가 계속 안나와서 뭐 마이크로 어쩌구 문서 읽다보니, 저래 돼있어서 해봤는데 잘되네요 .. ㅋㅋ
그럼 즐거운 개발되세요 !
반응형
'IT기술(코딩) > C, C++' 카테고리의 다른 글
mfc 배경 깜박임 아주 쉽게 없에는법, remove backgound blink and cover button (0) | 2024.05.03 |
---|---|
MFC 스크롤, spin 등등 이벤트 동작안할때 체크할 사항. MFC초보, 입문 (0) | 2024.04.15 |
C++ smtp socket connection error 소켓 커넥션 에러 관찰 WSAStartup inet_addr 메일보내기 (0) | 2022.08.14 |
C# design Form 에서 ZMQ 통신 하기 Client (0) | 2022.06.16 |
C++ MFC 10진법, 16진법 변환 (0) | 2022.05.23 |