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
[13933] [질문]멀티 쓰레드에서 UDP소켓사용시
공부중 [hurco] 1777 읽음    2001-12-26 10:11
멀티쓰레드를 생성(약 20개쯤)하여 UDP소켓을 이용하여
데이타를 전송하는 프로그램을 작성하였습니다.
쓰레드상에서 다음과 같이

void __fastcall ThreadProc::Execute()
{
..................

       //           A1
       EnterCriticalSection(&CriticalSection);
       dxinfo[ChanNo].ip_receive = 0;
       Form1->udp2->RemoteHost = HostIP;
       Form1->udp2->SendBuffer(buff,31,30);
       LeaveCriticalSection(&CriticalSection);

}
멀티쓰레드에서 데이타를 보내야 하니까 CriticalSection을 이용하여
쓰레드간에 동기화를 시키고 빌더에 있는 UDP 컴포넌트를 이용하여 다른
PC에 데이타를 전송하는 프로그램입니다.
그런테 하루에 1번쯤 A1부분에서 멈춰져 있습니다.
전체 쓰레드가 멈춘것인지 1개 쓰레드만 멈춘것인지 모르겠지만
종료후 다시 실행하면 예전같이 다시 돌아가고 왜 가끔가다 1번씩
이상이 있는지 원인을 모르겠슴다.
어느 부분에서 논리적인 에러가 있나요.

EnterCiriticalSection으로만 사용하면 멀티쓰레드에서 사용하는데
이상은 없는것이죠..

+ -

관련 글 리스트
13933 [질문]멀티 쓰레드에서 UDP소켓사용시 공부중 1777 2001/12/26
13966     Re:[질문]멀티 쓰레드에서 UDP소켓사용시 조청현 1745 2001/12/27
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.