Как с помощью библиотеки Qt написать сокет-сервер, который бы выолнялся внутри потока? Для этого надо использовать классы Qthread и QSocket. Основной поток программы вызывает другой поток (назовём его SocketServerThread), внутри которого реализован сокет-сервер. Этот сокет-сервер слушает сообщение. Если он принимает сообщение, то происходит его обработка на уровне всей программы (с помощью глобальных переменных). Если же сокет-сервер не принимает сообщение, то тогда в потоке SocketServerThread организуется задержка, например, на одну секунду (1000 миллисекунд), а потом сокет-сервер опять слушает сообщение. И так далее--до тех пор, пока не пришло сообщение о том, что надо прекращать работу сокета-сервера. (Например, значения 1 и 2 означают какие-то действия по отношению к основному потоку программы, а значение 3 означает завершение работы сокета-сервера).
Вопрос: как это всё организовать?
Желательно привести пример кода.
|