Microsoft MVP성태의 닷넷 이야기
소켓 비동기 ReceiveTimeOut 구현 [링크 복사], [링크+제목 복사],
조회: 18101
글쓴 사람
봉봉이
홈페이지
첨부 파일
 

안녕하세요.
비동기 소켓 Receive Timeout 구현에 관해서 질문을 드립니다.
제가 구현하려고 하는것은 Socket이 정말 끊어졌있는지 확인하려는 용도로 2분 마다 timer로 client, Server간 핸드쉐이킹으로 메세지를 주고 받습니다. 그리고 client가 server로 부터 얼마동안 메세지를 받지 못하면 socket이 끊어졌다 판단하고 재접속하는 로직입니다.

따라서, recievetimeout을 구현해야 하는데..

구글링 하여 구현 방법으로는 아래와 같이 WaitOne으로 감지하는 것인데 우선 WaitOne으로 ReceiveTimeout을 구현할 수 있는지 궁금합니다.
(우선 구현해서 테스트 해본 결과 계속 res가 false로 들어오긴 하네요 ㅠㅠ)

var result = socket.BeginReceive(_dataBuf, 0, _dataBuf.Length, SocketFlags.None, WorkerCallBack, null);

IAsyncResult res = result.AsyncWaitHandle.WaitOne(_receiveTimeout, false);
if (!res)
{
   //timeout발생
}
        








[최초 등록일: ]
[최종 수정일: 1/13/2020]


비밀번호

댓글 작성자
 



2020-01-13 07시12분
간단한 테스트 코드를 올려주세요.

재현 가능한 최소한의 예제 프로젝트란?
; http://www.sysnet.pe.kr/2/0/11452
정성태
2020-01-14 09시14분
[봉봉이] 안녕하세요. 우선 소스 봐주셔서 감사합니다.
제가 참고한 소스가 아래와 같습니다. https://learn.microsoft.com/ko-kr/dotnet/framework/network-programming/asynchronous-client-socket-example
제가 생각했을 때 OnDataReceived 함수에서 EndReceive()를 호출 한뒤에 계속 서버가 데이터 수신을 위해서 BeginReceive전 WaitOne(timespan, false)을 호출하면 된다고 생각을 했는데..
혹시 다른방법이 있을까요? 찾아본봐로는 타이머를 Wrapping하는 방법이 있긴 하던데.. 이것도 잘 안되서요.
[guest]

... 61  62  63  64  65  66  67  68  69  70  71  72  73  74  [75]  ...
NoWriterDateCnt.TitleFile(s)
668정성태6/30/200716098    답변글 [답변]: 안녕하세요^^
663모름이6/19/200714416Microsoft.Framework 에서 OLE DB 사용하려면.. [1]
664모름이6/20/200715474    답변글 [추가질문]: 다른 OLE DB 를 사용하려면..
662조성택6/13/200715828C#에서 string클래스.. [1]
660신동열6/11/200717215ClickOnce 업데이트시 이전 버젼 제거오류 [1]
659한귀순6/11/200718309윈폼 프로그램 및 디자인. [2]
661한귀순6/12/200715654    답변글 [추가질문]: 윈폼 프로그램 및 디자인. [3]
657정해봉6/8/200726788요청 시간 초과 오류 [2]
655이방은5/28/200716987성태님 UML 도구 뭐 쓰십니까??? [1]
654임정훈5/23/200715688카드스페이스 관련질문
658정성태6/9/200716389    답변글 [답변]: 카드스페이스 관련질문 [1]
653사다수스5/22/200737390아래한글(HwpCtrl) ocx 메모리 릭 문제입니다. [4]파일 다운로드1
645송원석5/15/200718714ASP 의 ByVal 과 ByRef 특성
646정성태5/15/200718529    답변글 [답변]: ASP 의 ByVal 과 ByRef 특성
647송원석5/16/200718874        답변글 [답변]: [답변]: ASP 의 ByVal 과 ByRef 특성 [1]
648정성태5/16/200717543            답변글 [답변]: [답변]: [답변]: ASP의 ByVal과 ByRef 특성 [1]
649장윤태5/16/200716678                답변글 [답변]: [답변]: [답변]: [답변]: ASP 의 ByVal 과 ByRef 특성
650정성태5/16/200715012                    답변글 [답변]: [답변]: [답변]: [답변]: [답변]: ASP의 ByVal과 ByRef 특성 [2]
643해운대끓...5/15/200714122Singleton 패턴 테스트중 하나의 윈폼만 열기 오류파일 다운로드1
644정성태5/15/200715124    답변글 [답변]: Singleton 패턴 테스트중 하나의 윈폼만 열기 오류 [1]
642조성택5/10/200715966스레드와 WinINet? [1]
641한귀순5/8/200714683Code Obfuscate 에 관한 질문. ^^ [2]
640박희진5/7/200714480스마트 클라이언트에서 ActiveX 브라우저 컨트롤을 사용한 경우 javascript 문제 [1]
639김재영5/3/200721879webBrowser클래스에서 띄워지는 Javascript 오류 다이얼로그를 감지할 수 있습니까? [2]
638최민규4/29/200715071SmartPhone / PDA 등에서의 .NET Smartclient [1]
636라이프가드4/27/200715994Insert 오류입니다. CLOB ........ [1]
... 61  62  63  64  65  66  67  68  69  70  71  72  73  74  [75]  ...