TCP是Transmission Control Protocol的缩写,即传输控制协议。它是一种有连接的、可靠的、面向数据流的传输层协议,一般用于对可靠性要求较高的连续数据传输。
服务器借助QTcpServer类等待并接受客户机的连接:
调用listen方法,启动对指定IP地址和端口的监听
当客户机的连接进入时,其内部的incomingConnection方法会被调用
创建一个QTcpSocket对象
调用addPendingConnection方法,将QTcpSocket对象排入待决连接队列
发射newConneciton信号,在与该信号相连接的槽函数中:
调用nextPendingConnection方法,获取下一个待决连接
客户机(服务器)借助QTcpSocket类与服务器(客户机)交换数据:
客户机调用connectToHost方法,连接服务器
找到主机时发射hostFound信号
连接成功时发射connected信号
客户机(服务器)与服务器(客户机)通信
当新数据读就绪时,QTcpSocket对象会发射一个readyRead信号,在与该信号相连接的槽函数中:
调用read方法,读取数据
调用write方法,发送数据
客户机调用disconnectFromHost方法,断开与服务器的连接
连接断开时发射disconnected信号