Многопоточный QWebSocketServer

336
01 декабря 2017, 06:20

Задача: Есть три клиента которые подключаются к веб-серверу параллельно. Обработка запросов от всех трех клиентов абсолютно разная. Т.е. нужен многопоточный сервер и выделение потока под каждого клиента со своей обработкой и ответами. Если бы использовался 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.

READ ALSO
члены класса напрямую или через методы

члены класса напрямую или через методы

Есть ли принципиальная разница как обращаться к членам класса внутри методов этого же класса: через методы или напрямую? У меня сложилось...

259
Программно запустить приложение

Программно запустить приложение

Пытаюсь с помощью данной функции пытаюсь открыть приложение(путь указан верно, вместе с расширениемexe):

224
C++ csv запись в файл

C++ csv запись в файл

Есть массив, данные в котором меняются в цикле и в этом же цикле выводятсяНужно записать в csv файл этот массив с разными данными в столбики...

264