자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)

C++ Builder Multithread

2017.12.19 08:21

한시민 조회 수:350

Multithread로 프로그램을 만들었는데 자꾸 엉키고 있어서 어떻게 해결해야 하는 지 도와주시면 감사하겠습니다.

기본적으로 구조는 간단한데 이상하게 안에서 thread 구별용으로 사용하는 mNumber가 실질적으로 해당 thread로 구별하지 않고 자꾸 다른 thread와 엉키는 것 같습니다.

어떻게 프로그램을 짜야 하는 지 도와주시면 감사하겠습니다.

 

const int ThreadNumber = 40; //총 thread 수 설정

 

//Thread 선언

class MThread : public TThread {

....

pulbic

int mNumber ; //for thread 구별용

void __fastcall myFunc(void);

.....

}

 

//myThread 선언

MThread * myThread[ThreadNumber];

 

void __fastcall MThread::myFunc(void) {

        Variable[mNumber] = ... // global 변수

Function(mNumber, .....);

}

 

void __fastcall MThread::Execute() {

Sunchronize(myFunc);

}

 
각 thread가 시작된 후 myFunc()이 호출되면 해당 myFunc()이 실행될 때 mNumber로 구별되어 특정 thread에 해당하는 기능이 수행되어야 하는데 그렇게 되고 있지 않습니다. 뭔가 잘못하고 있는 것 같은데 그래서 아래와 같이 바꾸어 보았는데도 잘 안되는군요.
 

void __fastcall MThread::Execute() {

switch (mNumber) {

case 0:

         Sunchronize(myFunc);
         ...

case 1:

         Sunchronize(myFunc);
         ...

case 2:

         Sunchronize(myFunc);
         ...
 

}

 
번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2021.6~2021.12 관리자 2015.01.22 39915
공지 유용한 관련 사이트 관리자2 2014.03.20 79440
2692 [10.3.3 브리핑] RAD서버의 부하 분산 등은 어떻게 되나요? 험프리 2019.12.05 358
2691 RemObject 사용시 파일 업로드 삭제 방법? [1] 가나다 2020.02.06 358
2690 TstringList Addobject 질문입니다. [1] 희망나라 2017.03.17 358
2689 Windows CE [1] 가필드 2017.03.31 358
2688 델파이로 iso앱을 개발하려면 mac pc가 있어야 하나요? [1] 델마당쇠 2020.01.24 358
2687 XE8 버전 tatukgis 문의합니다. [1] 데브기어만세 2015.07.19 359
2686 64bit 개발환경 문의 [1] 조은놈 2016.07.12 359
2685 델파이 코드 작성 관련 옵션을 알고싶습니다 [1] 데브기어 2017.01.24 359
2684 GPS 기능을 서비스앱에 넣고 싶은데요.. [1] 미루후예 2016.04.20 359
2683 델파이 베를린의 FireUI 에 대하여 가르쳐주시기 바랍니다. [2] 거북이 2016.04.25 359
2682 [RAD서버] RAD서버에 socket.io 적용 여부가 궁금합니다. 관리자 2016.06.24 359
2681 안드로이드 아래 그림처럼 만들었는데 확대 축소가가 안되요,고수님들 부탁드림니다. [1] file 모나도 2016.08.04 359
2680 커스텀 키패드를 만드려고 합니다. 블루히아신스 2016.10.20 359
2679 델파이 상/하위 버전별 DataSnap 호환성.... [3] 가나당 2016.11.07 359
2678 [축하드립니다!] 개발자 Q&A 게시판 우수 답변자 선정 관리자 2016.12.27 359
2677 xe 10.2 에서 Form transparency 기능 문의 vastia 2017.07.20 359
2676 삼성폰에서 TEdit 엔터키를 입력하면 앱이 죽어 버립니다. 파이어버드 2018.05.31 359
2675 델파이 10.2 안드로이드 SDK 추가 [1] 마로 2019.02.18 359
2674 안드로이드에서 전화걸기 어떻게 하야 하나요? [2] 델마당쇠 2019.12.09 359
2673 TMediaPlayer.Play 에서 floating point invalid operation 에러 Jack 2020.06.30 359