2012-07-25 5 views
2

누군가 나를 도울 수 있으면 기쁠 것입니다. C++ Builder에 익숙하지 않고 C++에서 스레딩을 사용하지 않았습니다.T Thread in C++ Builder

나는 C++ 빌더 내에서 폼을 가지고 있으므로 스레드하지 않으므로 충돌이 발생하지 않습니다. 현재 양식은 응용 프로그램의 백그라운드 프로세스를 완료 할 때까지로드되지 않습니다.

+1

더 구체적인 문제가 있습니까? 기본 사항에 대한 개요 만 보려면 인터넷에서 정보를 찾을 수 있습니다 (예 : http://www.temporaldoorway.com/programming/cbuilder/threads/basics.htm – Michael

+1

[C++ 빌더의 스레드] 가능한 중복 (http://stackoverflow.com/questions/11639859/threads-in-c-builder) . –

+0

사용중인 코드를 제공하거나 무엇을 원하는지 구체적으로 설명하십시오 ... – kokbira

답변

4

C++ Builder에서 스레드 객체를 추가해야합니다 ("project.exe"를 마우스 오른쪽 버튼으로 클릭하고 새로 추가, 다른 것을 C++ Builder 파일 폴더에 추가). 그런 다음 헤더 include를 추가하고 객체를 인스턴스화해야합니다.

개체를 다루는 데 너무 멍청하다면 CreateThread 함수를 함수와 함께 사용하면됩니다. 어쩌면 최고가 아니지만, 경험이 없다면 매우 쉽습니다.

TForm1 *Form1; 
unsigned long __stdcall my_thread_func(void *args); 

//--------------------------------------------------------------------------- 
__fastcall TForm1::TForm1(TComponent* Owner) 
    : TForm(Owner){ 
    CreateThread(NULL,0,&my_thread_func,NULL,0,NULL); //create thread in form constructor 
} 
//--------------------------------------------------------------------------- 
// Write a function like this 
unsigned long __stdcall my_thread_func(void *args){ 
Sleep(5000); 
Form1->Caption = L"Done!!"; 
}