자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 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 39528
공지 유용한 관련 사이트 관리자2 2014.03.20 79028
303 cannot compile this 'this' captured by SEH yet 오류 현상 [1] sihwan 2020.05.28 334
302 MySQL의 JSON 필드 값을 읽어 들이는 방법이 있나요? sihwan 2017.02.25 337
301 XE6에서 FastReport [1] file 나도몰라 2015.11.02 338
300 스타일 제외 관련 질문드립니다. [1] 나도몰라 2016.10.18 339
299 도수분포표 관련 Component 추천 [1] file 오짱이 2017.05.22 339
298 C++ Builder 무료에디션 라이선스 문의 쌉웨얼 2019.06.21 340
297 C# COM interface 사용 질문 ian 2019.01.25 342
296 갑자기 GetIt연결이 안 됩니다. [2] file 개성산전 2020.03.31 342
295 C++ Builder에서 리팩토링 file 겨울잠안자는곰 2019.10.09 345
294 1개의 LIcense로 C++ Builder와 Delphi 사용이 가능한지? [3] techwon 2017.01.05 347
» Multithread 한시민 2017.12.19 347
292 Rio 에서 PAServer 연결이 안됩니다. sihwan 2018.12.11 347
291 RAD Studio 10.1 Berlin에 대해 문의 드립니다. [1] file YSJ 2017.02.03 349
290 해상도에 관한 간단한 질문 드립니다 ㅜㅜ file heurinbada 2016.08.16 349
289 c빌더 컴파일후 도스창을 유지하는 방법을 알고 싶습니다 [1] 이수욱 2018.08.30 349
288 fast report가 안보입니다. [5] file icj 2020.03.03 349
287 IDE 레이아웃 변경에 대하여 [2] file LEO 2017.02.21 349
286 c++소스 보기창에서 좌측에 보면 사각형에 -와 + 표시가 나오는데 [1] file 금목암 2016.11.01 350
285 델파이에 있는 ctrl+shift+C 빌더에서 되는 지요? [1] file 겨울잠안자는곰 2018.01.27 350
284 C++Builder 최신업데이트(30831)불구 Kinvey 푸시 토큰을 받지 못합니다. 개성산전 2018.10.01 351