我正在使用TIdCmdTCPClient和TIdCmdTCPServer.突然间,我发现我可能想要进行双向沟通.
什么是最好的?我应该使用其他一些组件吗?如果是这样,哪个?或者我应该使用'客户'轮询'服务器'来询问它是否希望进行任何通信?
这是一个非常小的系统.两个客户端和十个服务器,每天30到60秒发生一次喷射,每天一次几分钟,因此轮询的开销是无关紧要的.
如果有一个'正确'的方式,我只是喜欢.
更新:这真的是一个非常简单的系统.交通非常少,而且一切都很简单.所有传输都是偶数类型的指示,是可选的单个参数.
<event type> [ <parameter>] 例如 "HERE_IS_SOME_DATA 42"
这可以在两个方向发送,悬停在这里不是"回复"本身.只是发消息(并希望它到达那里)?收到没有数据的Ack?不捕获异常表示消息已成功发送?)
使用两个TIdCmdTCPServer是否可能(是否有点矫枉过正?)