C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[49229] [질문]서버 통신중에.. PostThreadMessage 사용 문제
초보빌더 [] 1607 읽음    2007-05-11 02:35
제소스 구조를 간략하게 적어봤습니다.
이런구조가잘못된건가요? ;
통신중에 메세지를 가끔놓쳐서 말이죠. ㅠㅠ
클라이언트가 하나만 붙었을경우에는 잘모르는데.. 여러개가 붙으면.. 그런증상이 심합니다..

꼭 메세지를 써야하거든요..
이게 아니라면 다른방법을아신다면 짧은글이라도 부탁드릴께요.


void __fastcall TTcpThread::Execute()
{
   try
   {
      try
      {
         m_pStream = new TWinSocketStream(ClientSocket, 120000);
         while(!Terminated&&ClientSocket->Connected)
         {
               TcpSendProcess();          
               TcpRecvProcess();
          }//while
      }//try
      catch(...)
      {
        //생략
      }//catch
   }//try
   __finally
   {
      생략
   }//__finally

}//Execute()



void __fastcall TTcpThread::TcpSendProcess()
{
   MSG Msg;
   if(!PeekMessage(&Msg, NULL, 0, 0, PM_REMOVE)) return;
   else
   {
      switch(Msg.message)
      {
      case WM_MESSAGE_1:
               함수_1();
      break;
     case WM_MESSAGE_2:
              함수_2();
      break;
      }//switch
   }//else
}//TcpLoginProcess



void __fastcall TTcpThread::TcpRecvProcess()
{
    if(m_pStream->WaitForData(100))
   { 
        .....생략
         RecvBuff(pBuff, nRecvLen);  
         ...생략
   }//if
}//RecvProcess()

+ -

관련 글 리스트
49229 [질문]서버 통신중에.. PostThreadMessage 사용 문제 초보빌더 1607 2007/05/11
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.