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

C++ Builder Multithread

2017.12.19 08:21

한시민 조회 수:154

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 15761
공지 유용한 관련 사이트 관리자2 2014.03.20 54577
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 97974
3119 퀵레포트에 대해서..? [2] 헨씀히포 2020.11.29 274
3118 Andorid, IOS에서 동영상 갤러리를 여는 방법 [2] delphiman 2020.11.26 196
3117 델파이 10 엑셀변환 관련 [3] 개미 2020.11.27 343
3116 Multi Tenant 모드가 계속 유지가 됩니다. [3] 초보개발자 2020.11.27 179
3115 RAD Server에서 FileStream사용하여 응답보내기 [2] 초보입니다 2020.11.19 193
3114 델파이 응용프로그램이 백그라운도 실행됩니다. [1] 비앤케이 2020.11.25 256
3113 refind 이용하여 변경 시 컬러적용 안되는부분 [1] file 개미 2020.11.24 166
3112 [마이그레이션] FastReport [1] 개미 2020.11.24 194
3111 [마이그레이션] 마이그레이션시 배경등 색상이 기본 흰색으로 변경되는 현상 [1] 개미 2020.11.24 150
3110 refind 기능을 이용하여 pageControl 에 올라가 있는 버튼은 수정이 안되나요 ? [1] 개미 2020.11.26 134
3109 폰트 적용 관련 문의 Firemonkey 2020.11.25 136
3108 문서편집기 기능에 대해 문의드립니다. [3] 김진규 2020.11.19 192
3107 FireDAC - TFDLocalSQL 문의드립니다. [2] 딤몽 2020.11.19 142
3106 PC의 맥주소를 확인하는 방법 [1] 천마산 2020.11.21 536
3105 dephi 10.1 DBExpress MySQL 접속 문제 질문드립니다. [1] kevin 2020.11.19 745
3104 10.4 Sydney getit 문제 [1] file 김프로 2020.11.20 229
3103 [공유] 엣지 브라우저 컴포넌트 설치 후 실행 시 "Failed to initialise Edge browser control" 오류가 발생합니다. [2] file 험프리 2020.09.28 1223
3102 Android 카메라 앨범 저장 문제 [2] 초보입니다 2020.11.16 175
3101 안드로이드 개발시 선굵기가 제각기로 나오는 이유(현상) [1] file delphiman 2020.11.17 164
3100 델파이 xe seattle 10 사용중 이미지 인쇄 버그 네이트 2020.11.17 81