Microsoft MVP성태의 닷넷 이야기
smart client에서의 Socket 함수 사용 [링크 복사], [링크+제목 복사],
조회: 11713
글쓴 사람
김재옥 (mainroot at gmail.com)
홈페이지
첨부 파일
 

안녕하세요.
Smart Client 에서의 Socket 통신과 관련하여.... 궁금한 점이 있어서 글을 쓰게 되었습니다.

저는 UserControl 에서 Socket Send/Recv를 할려고 합니다.
UserControl 을 Winform 에 올려 놓고 Send / Recv 를 할때는 이상없이 받아지는 것을 확인 했습니다.

근데 Webform(IE에서 실행)에 올려 놓고 쓸때 이상한 현상이 발견 되었습니다.
UserControl에서 Send 를 할때는 문제는 없으나... ( Server에서 Send 메세지가 즉각적으로 받아 집니다.)
Recv 메세지는 한참을 기다린 후(Send 후... 2~3분 소요후...) 받아집니다.( 맨 처음에만 2~3분이 소요되고.. 1번 Recv를 받은 후에는 즉각적으로 Recv를 받을 수 있습니다.)

단지 UserControl에서 Socket Send/Recv가 이루어 지는 것인데....
Winform 에서는 Recv가 즉각적으로 이루어 지는 반면... Webform에서는 Recv가 즉각적으로 이루어 지지 않고(2~3분 소요)...
1번 Recv가 성공하고 나면... 다음 Recv 메세지는 즉각적으로 잘 받는것이 궁금해서 글을 올립니다.

혹시... 해결 방법이 있으시면 알려 주시기 바랍니다.

글 읽어 주셔서 감사합니다.

수고하세요.

참고 : 저는 UserControl에서 Client 기능을 구현했습니다. Recv는 별도의 스레드에서 받게 되어 있습니다.
그리고 또하나 이상했던 점은요...
----------------------------------------------------------------------------------------------------------
const string strAddress = "127.0.0.1";
const int     nPort        = 30001;
            
IPAddress    serverIP        = IPAddress.Parse( strAddress );
IPEndPoint    serverEndPoint    = new IPEndPoint( serverIP, nPort );

m_sock = new Socket( AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp );
m_sock.Connect( serverEndPoint );
----------------------------------------------------------------------------------------------------------
위와 같이 코딩했을 시... Connect함수에서 한참동안 Block되는것을 보았습니다.
Block이 풀리고 난뒤... send/recv에는 전혀 지장 없고요. ㅡㅜ








[최초 등록일: ]
[최종 수정일: 10/6/2005]


비밀번호

댓글 작성자
 



2005-10-09 12시35분
예전에... 경험했던 것 같기도 하고.... ^^;
가물 가물 하네요. 일단, .NET 1.1 SP1 을 설치하셨는지?

저희가 스마트 클라이언트를 가이드하면서 소켓과 관련된 문제는 거의 없었던 것 같습니다. 기본적으로 DB 접근을 웹 서비스를 통해서 하는데, 웹 서비스 호출 자체가 소켓 구현을 포함하고 있기 때문이죠.
techsharer

... 16  17  18  19  20  21  22  23  24  25  26  27  28  29  [30]  ...
NoWriterDateCnt.TitleFile(s)
5164레드5/21/201918280실행 과정과 실행파일 디버그 시 Icon변경 질문드립니다. [5]
5163이대희5/20/201915147시작하세요 C# 7.3 프로그래밍 책 도착했습니다. [1]
5162채홍윤5/14/201919644Mono Develop window 설치 [6]
5161정대영5/13/201916097VS 2013에서 C#6.0(.netFramwork 4.6.1) $ 디버깅 오류 [1]
5160초보개발자5/13/201918231wcf 관련 국내 서적 살만한 책이 있나요? [2]
5159sdh25/9/201916381VS 2010 버전에서 생성한 DLL을 VS 2017버전에서 실행 시 에러 [2]
5158sdh5/8/201916434Visual studio 2010 버전에서 생성한 Project를 Visual studio 2017버전에서 실행에러 [1]
5157김경훈5/8/201919715Task 만들때 넘겨주는 CancellationToken은 어디서 사용 되는 건가요? [4]
5156rysoo5/8/201918768yield return의 리턴 타입 질문 드립니다. [4]
5155세퉁5/7/201921094관리자 권한으로 실행 시 알림창(?) 없이 바로 실행 시킬 수 있는 방법이 있을까요?? [2]파일 다운로드1
5154Soul...5/4/201916061NamedPipe 질문드립니다. [2]
5153개태5/4/201917270WCF RESTful Service에서 enum을 parameter로 쓰는방법 [2]
5152세퉁5/3/201918392인터넷 시간을 불러와 pc에 적용 시키고 싶습니다. [3]파일 다운로드1
5151이대희5/3/201915090C# 7.3으로 개정판 출간 계획이 있으신가요? [1]
5150김이현5/2/201918504C# 딕셔너리 생성에 대해 질문드립니다. [1]
5149민성5/1/201916162ftp 이미지 업로드중 [1]
5148wpf질문4/30/201916358특정 사이트를 wpf에서 popup을 항상 허용하게 할려면 어떻게 해야할까요? [5]
5147민성4/30/201914955wpf에서 작업관리자를 띠울려면 어떻게 해야 하나요? [1]
5146불파겐4/25/201914960하나의 필드를 여러 스레드에서 읽어갈 때 스레드 동기화를 하지 않으면 문제가 생길까요? [2]
5145e구름4/17/201918897Properties.Setting.Default값에 대해 질문드립니다. [2]
5144성태님 ...4/17/201915900질문하시기 전에 10000 페이지 오류 납니다. [1]
5143헌이4/16/201916865윈도우 작업표시줄에 프로그램 띄우기 [2]파일 다운로드1
5142cab2...4/9/201923181C#으로 만든 DLL 배포하기 [10]
5141하늘사랑4/5/201917776Axinterop 래퍼에 관해서 질문드립니다. [7]
5140게스트4/1/201916374안녕하세요. 초보 개발자입니다. SD리더기에서 SD카드를 꽂으면 발생하는 이벤트 문의 [2]
5139김이현3/28/201919730C#에서 CRON 같은 스케줄러를 사용하려면 어떻게 해야 하나요? [3]
... 16  17  18  19  20  21  22  23  24  25  26  27  28  29  [30]  ...