Q&A

  • ★★★★★★★★★★★★ Indy에서 이상한 현상 하나....★★★★★★★★★★★★
폼위에 Button하나, IdTCPServer 올려 놓고 IdTCPServer의 DefaultPort를 아무거나 주고

다음과 같이 코딩합니다.



procedure TForm1.Button1Click(Sender: TObject);

begin

IdTCPServer1.Active := not IdTCPServer1.Active;

end;



버튼을 누를때마다 Ctrl-Alt-T 를 눌러서 thread의 갯수를 보면

IdTCPServer의 Active를 on/off할때마나 thread가 늘었다 줄었다 하는 것을 볼 수 있습니다.

그런데, 문제는 작업관리자(Task Manager)에서 process 의 thread갯수를 보면

thread갯수가 누적되어 증가하는 현상을 볼 수 있습니다.

참으로 이상한 현상이지요.

그리고 디버깅모드에서 계속 버튼을 눌러 프로그램을 종료할 때

살아 있던 thread들이 한꺼번에 좌르륵 죽는 것을 확인할 수 있습니다.

아무래도 Indy의 버그가 아닐까 하는 생각이 들기도 하구요.



참고로 저는 Indy910B버전을 사용하고 있습니다.

저와 같은 현상을 접해 보신 분들 답변 기다리겠습니다.

그럼 즐코하시구요...

2  COMMENTS
  • Profile
    이경문 2001.12.06 21:26
    상위버전에서는 해결다었다고 하네요.

    쩝, Indy버전이 워낙 다양해서...



    이경문 wrote:

    > 폼위에 Button하나, IdTCPServer 올려 놓고 IdTCPServer의 DefaultPort를 아무거나 주고

    > 다음과 같이 코딩합니다.

    >

    > procedure TForm1.Button1Click(Sender: TObject);

    > begin

    > IdTCPServer1.Active := not IdTCPServer1.Active;

    > end;

    >

    > 버튼을 누를때마다 Ctrl-Alt-T 를 눌러서 thread의 갯수를 보면

    > IdTCPServer의 Active를 on/off할때마나 thread가 늘었다 줄었다 하는 것을 볼 수 있습니다.

    > 그런데, 문제는 작업관리자(Task Manager)에서 process 의 thread갯수를 보면

    > thread갯수가 누적되어 증가하는 현상을 볼 수 있습니다.

    > 참으로 이상한 현상이지요.

    > 그리고 디버깅모드에서 계속 버튼을 눌러 프로그램을 종료할 때

    > 살아 있던 thread들이 한꺼번에 좌르륵 죽는 것을 확인할 수 있습니다.

    > 아무래도 Indy의 버그가 아닐까 하는 생각이 들기도 하구요.

    >

    > 참고로 저는 Indy910B버전을 사용하고 있습니다.

    > 저와 같은 현상을 접해 보신 분들 답변 기다리겠습니다.

    > 그럼 즐코하시구요...

  • Profile
    최용일 2001.11.24 04:37
    안녕하세요. 최용일입니다.



    Win2000에 Indy8을 쓰는데 그러한 현상은 없네요... Indy9는 안써봐서... 아직 베타버전이라서 그런가 봅니다...



    Indy8에서는 쓰레드 늘고 줄어드는게 제대로 작동합니다...



    ^^ 항상 즐코하세요...



    이경문 wrote:

    > 폼위에 Button하나, IdTCPServer 올려 놓고 IdTCPServer의 DefaultPort를 아무거나 주고

    > 다음과 같이 코딩합니다.

    >

    > procedure TForm1.Button1Click(Sender: TObject);

    > begin

    > IdTCPServer1.Active := not IdTCPServer1.Active;

    > end;

    >

    > 버튼을 누를때마다 Ctrl-Alt-T 를 눌러서 thread의 갯수를 보면

    > IdTCPServer의 Active를 on/off할때마나 thread가 늘었다 줄었다 하는 것을 볼 수 있습니다.

    > 그런데, 문제는 작업관리자(Task Manager)에서 process 의 thread갯수를 보면

    > thread갯수가 누적되어 증가하는 현상을 볼 수 있습니다.

    > 참으로 이상한 현상이지요.

    > 그리고 디버깅모드에서 계속 버튼을 눌러 프로그램을 종료할 때

    > 살아 있던 thread들이 한꺼번에 좌르륵 죽는 것을 확인할 수 있습니다.

    > 아무래도 Indy의 버그가 아닐까 하는 생각이 들기도 하구요.

    >

    > 참고로 저는 Indy910B버전을 사용하고 있습니다.

    > 저와 같은 현상을 접해 보신 분들 답변 기다리겠습니다.

    > 그럼 즐코하시구요...