在QT网络编程中,服务器往往需要和多个客户端保持连接,因此,我在熟悉多线程编程过程中,在TCP服务每接收到一个客户端连接请求,就新建一个线程。客户端也是在新建的线程中维护的。
程序的思路如下:
程序使用了非模式对话框来分别显示服务器和客户端,默认情况下客户端使用127.0.0.1这个本地IP来和自己进程内的服务器通讯。服务器在监听到新客户端的连接请求后新建对话框以及一个线程与客户端通讯,客户端建立连接成功后会将自己的线程ID发送给服务器,服务器接收到数据后将自己的线程ID返回给客户端。客户端断开连接后会自动将对话框关闭以及释放资源。服务器端在客户端断开后,也会自动将对话框关闭。
1