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

C++ Builder Multithread

2017.12.19 08:21

한시민 조회 수:347

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 39516
공지 유용한 관련 사이트 관리자2 2014.03.20 79018
163 윈도우10 RS1 업데이트 후 Code Folding Tree 사라짐 현상 [3] file StarWagon 2016.08.26 545
162 RAD Studio C++ Builder 10.1 베를린 환경에서 델파이 컴포넌트 Build 안되는 문제.. [1] 펭귄아빠 2017.10.23 547
161 컴파일시 오류 [1] 엠카바데로 2016.04.19 553
160 XE2에서 SFTP를 사용하려고합니다. 링쿠 2016.01.14 555
159 RAD Studio 10.3.2 Code Insight의 지속적인 문제 [2] 포비 2019.10.02 557
158 10.4.1 TSpeedButton 폰트사이즈 가 조절 되지 않습니다. [1] 포비 2020.10.19 558
157 C++ Builder 몇가지 빌드오류. [2] junho103 2018.03.27 561
156 Builder XE 사용 중 Memory Leak 발생 시 SetProcessWorkingSetSize 사용해도 되나요? 제제제 2020.07.20 568
155 CG32.DLL을 찾을 수 없습니다 [3] 손보라 2019.05.10 570
154 TStringGrid를 스타일 제외하기 [2] 나도몰라 2016.10.05 573
153 TStringList 관련해서 [1] 한시민 2016.04.12 573
152 tuple 을 사용할수 없나요? [3] file 하루 2021.04.01 577
151 rad studio 10.1 berlin c++빌더 comport 컴포넌트 사용 [1] 심슨 2017.02.02 581
150 "display notification: out of stack space" 에러가 발생하고, 초기화면이 뜨며 화면이 멈춥니다. 험프리 2017.11.27 587
149 C++빌더 10.1 검토 중 컴포넌트(ComPort, Office2K) 사용가능 여부 문의합니다. 험프리 2017.03.17 588
148 가상 키보드 크기가 정상적으로 넘어오지 않습니다. [1] file 쿠리 2017.09.25 589
147 블루투스 사용 문의 [2] 포세가이 2019.01.31 589
146 10.3 Rio 버젼에서 Code Insight 기능 오류현상 [1] sihwan 2018.12.14 595
145 [문의] C++ Builder 10.x.x 로 개발된 프로그램 재배포는 어떻게합니까? [2] file inhi 2021.01.14 602
144 xmpp와 mqtt에 대해서 문의사항있어요 [1] 엠카바데로 2017.05.15 605