0

我需要监控在远程计算机上执行的应用程序的活动,所以我选择使用简单的 SendLn / RecieveLn 方法,但我不确定它在非常大的本地网络中是否稳定(一台服务器将收到一个简单的来自大量计算机的文本)。

procedure Tform1.log(inp:string);
begin
  //
  richEditText.Lines.Insert(0,inp); 
end;

procedure TForm1.TcpServer1Accept(Sender: TObject;
  ClientSocket: TCustomIpClient);
  var buf:string;
begin
  //
  log('accept:'+ClientSocket.RemoteHost);
  log('accept:'+ClientSocket.Receiveln);
end;
4

1 回答 1

0

从来没有保证交付 - 网络问题看到了这一点。客户端知道服务器已收到通知的唯一方法是客户端是否收到来自服务器的响应。但是,在状态更新的情况下,只要在更新中发送完整的状态,您就可以设计系统,以便如果奇数消息丢失,则没有真正的问题,因为下一条消息最终会通过。除非你有永久性的网络问题,在这种情况下“sneakernet”是你唯一的选择;-)

于 2012-05-10T14:54:39.257 回答