【发布时间】:2013-10-14 23:43:09
【问题描述】:
一个印地问题。
我在我的TIdTCPClientReadLn 调用中添加了一个超时参数,这样我的线程就可以经常检查是否已终止。但是,如果发生超时,从那时起,我再也不会从 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;
【问题讨论】: