一个印地问题。
我在TIdTCPClient
ReadLn
调用中添加了一个超时参数,这样我的线程就可以经常检查是否终止。但是,如果发生超时,从那时起我就再也没有得到任何数据ReadLn
。我如何重置它TIdTCPClient
以便它会再次寻找一条线?
procedure TClientListner.Execute;
var
msg : String;
begin
while not terminated do
begin
msg := fSocketCon.IOHandler.ReadLn('\n', 200);
if not fSocketCon.IOHandler.ReadLnTimedOut then
begin
DoSomeThing(msg);
end;
end;
end;