[求教]关于QTcpServer编写tcp服务端的问题。

weixin_38060998 2019-09-19 05:27:35
问题描述:    最近我在写一个基于tcp协议的服务端和客户端通信程序,但是由于对qt的网络变成理解不通透,所以出现很多问题,调试到现在,也学到很多东西,但是还有一些问题无法解决,故向各位大侠请教。困扰我很久的问题如下:    1、我服务器端监听客户端的连接,对每一个tcp连接创建一个线程去处理,我用值传递的方式把进来tcp连接的描述符传给线程,为什么客户端发出来的数据不能被线程接收到?莫非线程用setDescriptor()绑定的新tcp_socket不能取得原来tcp_socket的读写权限?    2、有没有一种好的方式让服务器端保存客户端活动的tcp连接,用以周期性的发送数据到客户端?意思就是,如果服务端需要主动和每一个连进来的tcp客户端通信该怎么操作?    3、在网络通信程序设计中,该采取怎样的方式?(这里的方式的涵义:1、双方建立tcp连接后,不要disconnect,在收发很多数据后,当客户端执行关闭的时候才关闭tcp连接; 2、双方每读写一次数据,都建立一个tcp连接,数据完成后马上disconnect,像这样的话,怎么处理“问题2”)    4、QTcpServer是不是一次只能读取一个等待的tcp连接?    5、在同一客户端上,是不是同时只能建立一个连接到服务端的tcp连接,如果第一次连接没有关闭,马上启用第二个连接(到同一个服务端),那么是不是第一个连接就被屏蔽了?意思就是说,此时服务器发往第一个连接的数据是不是都被发到第二个连接上去了?    6、附带问一个 QUdpSocket的问题:怎么样才能防止UDP在传输的过程中不调包?
...全文
23 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

433

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧