|
Thread 에서 폼 객체의 멤버에 접근을 하려면 Synchronize를 사용해야 하는데
통신 클래스의 인스턴스 역시 TFormMain의 멤버이므로 쓰레드에서 접근하려면
Synchronize를 써야 할 것 같네요..
최상천 님이 쓰신 글 :
: 메인폼에서 인스턴스로 가지고 있는 RS-232 통신 클래스가 있습니다. ==> m_pPlc
: class TFormMain : public TForm
: {
: public:
: TPlc *m_pPlc;
: };
:
: 이(TPlc) 클래스 메소드중에 아래와 같은 메소드가 있습니다.
: TPlc::SendString
: {
: g_pCS1->Acquire ();
: .
: .
: .
: g_pCS1->Release ();
: }
:
: 문제는 스레드1이 SendString 함수를 계속적으로 호출하는 기능을 하고
: 메인폼에서 버튼을 누를때 SendString 함수를 호출 합니다.
: 그런데 버튼만 누르면 이게 죽어 버리네요.
:
: 스레드와 크리티컬 섹션 사용에 문제가 있는 걸까요?
|