Q&A

  • Thread 종료시키는 방법좀 가르쳐 주세요..
안녕하세요...
Thread 땜에...문제가..많네요....
thread 를 강제로 종료시키는 방법 좀 가르쳐 주세요...

선언은
  TMyThread = class(TThread)
  public
    PeerThread: TIdPeerThread;
  protected
    procedure Execute; override;
  public
    constructor create(kk: TIdPeerThread);
  end;
이렇게 해 놓았고요...

constructor TMyThread.Create(kk: TIdPeerThread);
begin
inherited Create(False);
FreeOnTerminate := True;  //<= 자동으로 Free 된다고 해서...
PeerThread := kk;
end;

호출은
    TMyThread.Create(AThread);

강제로 죽일 때..
    MyThread.Terminate;
를 사용 했습니다.

그런데...

Thread 보는 프로그램 (Ctrl+Alt+T) 를 이용해서..실행시켜 보니까..
메모리에..계속 생성된 상태로 나오고 실지 Thread 가 실행 되어 있
습니다.
어떻게 해야지...죽일수 있는지..방법좀..자세히 가르쳐 주세요...


FreeOnTerminate := True; 을 False 로 바꾸고..
MyThread.WaitFor; 를 Terminate 밑에 추가 시키면..
Error 가 발생 합니다...
MyThread.Free 도 안되고....

고수님들의 빠른 답변..기다립니다.....
0  COMMENTS