写一种你认为最优的TCP客户端 请求-应答模式
小弟就这30分了,请不要见怪
问题是:tcp通讯中这样的通讯 连接成功后,发送一帧请求命令,等待服务器应答,根据应答判断请求命令是否成功,请求和应答都是在一次连接中进行的,这里的“成功”,是表明服务器端接收了这个正确命令。
貌似很简单的样子,可把我这个菜鸟难倒了,是用阻塞的还是非阻塞的?
我现在用阻塞的套接字
connect成功之后,发送请求帧,用setsockopt设置recv的超时时间,比如3秒没等到应答或收到错误应该就认为请求失败。
这种做法虽然可以,但是如果写在button的onclick里,界面会因为recv的阻塞而死掉,所以onclick的函数中要建立现成来处理才行。
请大家说说你们遇到TCP通讯会怎么写这样的客户端,谢谢你们。
问题是:tcp通讯中这样的通讯 连接成功后,发送一帧请求命令,等待服务器应答,根据应答判断请求命令是否成功,请求和应答都是在一次连接中进行的,这里的“成功”,是表明服务器端接收了这个正确命令。
貌似很简单的样子,可把我这个菜鸟难倒了,是用阻塞的还是非阻塞的?
我现在用阻塞的套接字
connect成功之后,发送请求帧,用setsockopt设置recv的超时时间,比如3秒没等到应答或收到错误应该就认为请求失败。
这种做法虽然可以,但是如果写在button的onclick里,界面会因为recv的阻塞而死掉,所以onclick的函数中要建立现成来处理才行。
请大家说说你们遇到TCP通讯会怎么写这样的客户端,谢谢你们。
...全文
相关推荐
C#编写Modbus TCP客户端程序
**构造请求帧**:创建包含功能码、寄存器地址和数量的数据帧。在TCP模式下,需要在数据前加上2个字节的事务ID、2个字节的协议ID(通常是0)和2个字节的长度信息。5.
Modbus TCP客户端和服务器示例
**Modbus TCP客户端和服务器示例**在工业自动化和物联网(IoT)领域,Modbus是一种广泛使用的通信协议,它允许设备之间进行简单的数据交换。
MFC写的TCP服务器和客户端
二、TCP客户端建立客户端也需要初始化Winsock,然后通过`connect`函数向服务器发起连接请求。在连接成功后,客户端可以向服务器发送数据,服务器也可以向客户端发送数据。1.
QModbus TCP模式写操作示例(一).rar
在这个"QModbus TCP模式写操作示例(一)"中,我们可能会看到如何设置一个Modbus TCP客户端,连接到远程服务器,并执行各种写操作,如写单个寄存器、写多个寄存器或写保持寄存器。1.
qt写的tcp客户端程序实现简单的接受发送数据
在本项目中,“qt写的tcp客户端程序实现简单的接受发送数据”旨在教你如何使用QT来编写一个TCP客户端,以实现基本的数据接收和发送功能。首先,理解TCP客户端的基本工作原理是必要的。


网络编程
