【发布时间】:2014-05-02 12:04:04
【问题描述】:
我有一个 TCP“服务器”,它每 20 秒发送一次数据。我正在尝试接收这些数据并显示结果。目前,数据显示 3 次而不是 1 次。然后再等待 20 秒,再次显示数据 3 次。
with Client do
begin
Connect;
while True do
begin
try
if IOHandler.CheckForDataOnSource(1000) then
begin
WriteLn('Bytes available: ' IntToStr(IOHandler.InputBuffer.Size));
IOHandler.ReadBytes(buffer, IOHandler.InputBuffer.Size);
end;
except
on e : exception do
writeln(e.message);
end;
if(buffer <> nil) then
begin
SetString(msg, PAnsiChar(@buffer[0], length(buffer));
buffer := nil;
IOHandler.InputBuffer.Clear;
end;
write(msg);
end;
end;
【问题讨论】:
-
现在它正在控制台应用程序中运行。只是想写一些简单的测试代码,尝试从套接字连接中读取数据。
-
它在程序过程体内。除了设置主机和端口号之外,这几乎就是所有代码。