上图分别为linux下的TCP与UDP传输过程
套接字通信的类属于network模块。需要把该模块添加到咱们创建的的qt项目里即pro文件中,这样编译时才能链接到qt提供的网络库。
QTcpServer常用的API函数有:
构造函数
给监听套接字设置监听
bool QTcpServer::listen(const QHostAddress &address = QHostAddress::Any, quint16 port = 0)
第一个参数为绑定的本地的任意(Any)IP地址,第二个参数为检测的端口号,port=0表示随机绑定一个可用端口,但一般要固定端口(0-65535建议用5000以上的)。返回值:绑定成功返回true,返回失败返回false
QTcpSocket
服务端可以通过调用nextpending这个函数得到可以用于通信的类对象
而客户端,创建QTcpSocket对象后还要连接服务器,才能通信
对端断开了连接,B端断开连接,则A端发出一个信号disconnected。