一个Indy问题。
我给我的
我给我的
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;