我正在尝试编写一个服务器和一组与服务器通信的客户端。服务器将维护不同客户端的状态,并允许它们在状态发生变化时向中央服务器发出警报。专家客户端将允许控制其他连接的客户端。
我将服务器作为 TIdCmdTCPServer,客户端(目前)使用 TIdTCPClient 进行连接。
如果客户端正在发送和接收命令,他们应该使用 TIdCmdTCPClient 吗?我读过 CmdTCPServer 和 CmdTCPClient 并没有真正一起使用 - 它们是否不必一起使用?
因此,对于这个问题的笼统含糊,我深表歉意,但我才刚刚开始研究这个问题,在陷入细节困境之前需要先弄清楚。
谢谢你的帮助
马克·H
TIdCmdTCPClient 和 TIdCmdTCPServer 一起使用在技术上是可以的,但一般来说是不可取的。这些组件旨在异步处理入站命令。让客户端等待服务器命令,而让服务器同时等待客户端命令是没有意义的。这是使您的连接死锁的好方法,因为它们都在等待彼此的数据,并且实际上没有先输入就发送任何内容。