C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[25986] Re:쓰레드 안에 함수를 넣었을때 생기는 문제입니다. 답변 부탁드립니다.
임문환.실업자 [origin] 1108 읽음    2003-06-17 17:11
TInitDataThread는 오타이고 TTestThread가 맞는거죠?

쓰레드 내에서 외부의 VCL 객체에 액세스할 때는 보통 Synchronize 메서드를 통해서 합니다.
void __fastcall TTestThread::Execute()
{
Synchronize(UpdateOuterVCL);
}

void __fastcall TTestThread::UpdateOuterVCL(void)
{
   Form1->FTest(10);
   Form2->Close();
}


현재 님이 제시한 코드대로라면
void __fastcall TForm1::FTest(int temp) 메서드 내에서는 전달된 매개변수로 value 값을 설정하기는 하지만 Label1->Caption은 지우고만 있군요.

Priority = tpIdle;이라면 가장 낮은 우선순위이고 시스템이 유휴 상태에 접어들 때만 실행되는 것으로 설명되어 있습니다.
따라서 TTestThread::Execute() 메서드가 실제로 실행이 되고 있는지부터 검사해보아야 겠습니다.

그리고, "실제로는 더 많은 컴포넌트들과 변수들이 관계됩니다"라고 하셨습니다.
그렇다면, 아래 Windows API 함수들을 참조하시면 도움이 되겠습니다.
CreateSemaphore, WaitForSingleObject, ReleaseSemaphore
InitializeCriticalSection, EnterCriticalSection, LeaveCriticalSection, DeleteCriticalSection



+ -

관련 글 리스트
25976 쓰레드 안에 함수를 넣었을때 생기는 문제입니다. 답변 부탁드립니다. 최민우 732 2003/06/17
25986     Re:쓰레드 안에 함수를 넣었을때 생기는 문제입니다. 답변 부탁드립니다. 임문환.실업자 1108 2003/06/17
25999         Re:Re:쓰레드 안에 함수를 넣었을때 생기는 문제입니다. 답변 부탁드립니다. 최민우 774 2003/06/18
26006             Re:Re:Re:쓰레드 안에 함수를 넣었을때 생기는 문제입니다. 답변 부탁드립니다. 임문환.실업자 908 2003/06/18
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.