Задача: Есть три клиента которые подключаются к веб-серверу параллельно. Обработка запросов от всех трех клиентов абсолютно разная. Т.е. нужен многопоточный сервер и выделение потока под каждого клиента со своей обработкой и ответами. Если бы использовался QTcpServer и QTcpSocket тогда вопросов никаких нет. Переписываем виртуальный incomingConnection(qintptr socketDescriptor), создаем новую среду, передаем socketDescriptor, а в ней уже создаем QTcpSocketи даем ему socketDescriptor + по дескриптору можно понять какой клиент подключился. В QWebSocketServerне ни incomingConnection(qintptr socketDescriptor), ни дескрипторов как таковых нет. Можно использовать метод QWebSocket *QWebSocketServer::nextPendingConnection(). Но в документации сразу написано:
Note: The returned QWebSocket object cannot be used from another thread.
И тут соответственно вопрос: как сделать многопоточный веб-сервер?
P.S. Я понимаю, что можно это сделать используя QTcpServer, но хотелось бы все таки попробовать с QWebSocketServer.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей