Qt中TCP/IP的服务器端的readyRead()与disconnected()信号

img


我是把整个的服务端的连接和应答以及数据收发都是通过线程中的moveToThread()来实现的,但是将1放到服务器监听函数的外面,也就是2的后面,服务器端和客户端能连接,但是就是接收不到客户端发的信息,同时服务器端还得不到客户端断开的信号,但是客户端能收到服务器端发的信息,当把readyRead()与disconnected()的连接放到监听函数里面时,一切就正常了,而且在客户端的建立过程中这两个连接是可以放到外面没问题的。想问下这是啥原因,谢谢!

不可以啊,
发射信号的socket不一致;
把1放到2的后面,tcp_socket都还没客户端的数据,只是做了new操作而已。
在1处就不一样了,那是接收了连接服务器进来的socket,当然没有问题啊!