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

C++ Builder Multithread

2017.12.19 08:21

한시민 조회 수:155

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 15768
공지 유용한 관련 사이트 관리자2 2014.03.20 54582
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 97995
204 [문의]배포한 설치프로그램 실행않되는 현상 어휴힘들어 2016.10.31 178
203 c++소스 보기창에서 좌측에 보면 사각형에 -와 + 표시가 나오는데 [1] file 금목암 2016.11.01 168
202 JSON 포맷의 데이터를 이용하고 싶습니다. [1] 험프리 2016.11.02 919
201 TListView Virtual 모드(?)에 대한 질문입니다. [2] file XeroNicHS 2016.11.22 282
200 3d 관련 컴포넌트 문의 드려요 [1] 엠카바데로 2016.11.30 197
199 C++ Builder 2007에서 유니코드 파일 불러오는 법 문의드립니다. [1] YSJ 2016.12.08 366
198 embarcadero RAD studio xe7 어플관련(c++ Builder XE7) [2] 상쵸리 2017.01.04 207
197 C++ 빌더에서 델파이 소스를 보다가 다시 빌드를 하면 에러 발생 techwon 2017.01.05 129
196 1개의 LIcense로 C++ Builder와 Delphi 사용이 가능한지? [3] techwon 2017.01.05 153
195 Java2OP 상쵸리 2017.01.11 123
194 [마이그레이션] bpr 파일(C++빌더 6.0)을 10.1 베를린에서 열수 없어요. 험프리 2017.01.18 529
193 Complex 자료형 [1] songport 2017.02.01 134
192 rad studio 10.1 berlin c++빌더 comport 컴포넌트 사용 [1] 심슨 2017.02.02 459
191 RAD Studio 10.1 Berlin에 대해 문의 드립니다. [1] file YSJ 2017.02.03 171
190 [질문] COM 객체 관련 [3] intotheblue 2017.02.10 164
189 C++Builder classic bluetooth example~~ Xownd 2017.02.17 176
188 IDE 레이아웃 변경에 대하여 [2] file LEO 2017.02.21 134
187 브레이크가 걸리지 않네요 [1] LEO 2017.02.24 140
186 MySQL의 JSON 필드 값을 읽어 들이는 방법이 있나요? sihwan 2017.02.25 172
185 C++ Builder 10 Seattle Lib 변환에 대한 질문 드립니다. [1] 옵토 2017.02.27 553