My question is how to have a QTcpSocket in the thread, use the socket to send requests to a server via methods callable from the GUI thread, have the thread listen for server messages and then create signals the GUI thread can be connected to obtain the server messages.