0

我有一个 TIdCmdTCPClient,它从 tcp 服务器(用 C 编写)接收以 LF 结尾的命令到命令处理程序中,并相应地使用 TIdNotify 更新 UI。如果不是有时我需要使用 writeln 和 readln 以传统方式与服务器通信,那么一切都很好。如果我尝试这样做,则会出现诸如 UI 冻结、后续命令稍后到达等问题。

是否有一种特定的方法可以使 writeln-readln 对与 TIdCmdTCPClient 一起工作,因为它们与 TIdTCPClient 一起工作?

4

1 回答 1

0

请提供有关您正在实施的协议的更多信息。当您在命令处理程序事件中时,您当然可以发出额外的WriteLn()ReadLn()调用,只要这是服务器期望您执行的操作。但是,如果您需要在ReadLn()带外调用,那么您将与TIdCmdTCPClient's 的内部读取发生冲突。

于 2012-09-27T01:02:13.797 回答