Q&A

  • indy소켓 client에서 스레트 생성후 종료방법..?


indy 소켓 tcp/ip client소켓에서 스레트 생성하구 데이터를 바는데..

disconnect하면 application에러가 나거든요.. 스레드를 먼저 종료해야 할것 같은데

방법을 .. 모르겠네요..



아시는분 조언 부탁합니다..

1  COMMENTS
  • Profile
    kirra 2001.10.15 20:34
    항이.. wrote:

    >

    > indy 소켓 tcp/ip client소켓에서 스레트 생성하구 데이터를 바는데..

    > disconnect하면 application에러가 나거든요.. 스레드를 먼저 종료해야 할것 같은데

    > 방법을 .. 모르겠네요..

    >

    > 아시는분 조언 부탁합니다..

    +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    쓰레드 종료는 다음과 같이 하시면 될 듯...



    constructor Thread.Create(CreateSuspended: Boolean);

    begin

    inherited;

    FreeOnTerminate := True;

    end;



    procedure Thread.Execute;

    begin

    try

    //while TCPClient.Connected and not Terminated do

    while TCPClient.Connected do

    begin

    strMsg := '';

    strMsg := TCPClient.ReadLn

    ('',IdTimeoutInfinite);



    if strMsg = '' then Continue;

    Synchronize(RecvPacket);

    end;

    except

    on E: EIdSocketError do

    begin

    //error 처리...

    end;

    end;



    if not Terminated then Terminate; //쓰레드 종료

    end;