1

Indy TIdTCPServer 组件有一个 OnExecute 事件,您可以在其中处理传入数据。我的应用程序涉及在进入打印机之前处理的流数据,因此我依赖于准备好的输出设备。我想要做的是让 TCP 流控制在输出流繁忙的情况下管理输入流。

我不知道如何最好地处理这种情况。Indy 文档对使用示例略知一二,感谢您提供任何指导!

4

2 回答 2

3

您不需要手动处理 TCP/IP 流控制。如果设备没有准备好,就不要在 OnExecute 代码中读取任何新的输入数据,这就是您所要做的。数据将位于套接字的接收缓冲区中,直到 Indy 将其读入它自己的缓冲区,然后它将一直存放在那里,直到您在自己的代码中读取它为止。如果socket的接收缓冲区满了,TCP/IP会自动通知对方停止发送数据,直到缓冲区腾出一些空间。

于 2013-01-08T03:30:59.460 回答
0

不确定您已经开发了自己的代码到什么等级。如果您还是初学者,您可能会从http://sourceforge.net/projects/indy10clieservr/找到 有用的演示样本作为起点。

于 2013-01-08T11:50:57.660 回答