2014-11-28 4 views
0

Мне нужно получить информацию о реальном времени с моего сервера в моей программе Qt. Я действительно делаю это, создавая соединение с базой данных, а затем извлекаю данные каждую секунду.Длинный опрос с Qt

Я ищу лучшее решение для этого: избегая выборки данных в бесконечном цикле.

Лучшим решением было бы сделать запрос MySQL и только иметь обратный вызов, когда новые данные поступают в базу данных. Как Ajax длинное соединение для опроса, но с Qt в C++

+0

Самое извращенное звучание названия дня. –

+0

Что это значит? Я не знаю имя, используемое для длинных связей serveur в C++ ... если оно существует – gr3g

ответ

1

Не извлекайте данные каждую секунду. Эффективным решением является технология Websocket. Это ваш сервер для передачи данных вашему клиенту, и вы можете использовать класс QWebSocket с Qt, начиная с версии 5.3. Есть хороший example.

Но это решение, безусловно, будет реализовано как на сервере, так и на клиенте. Я фактически реализовал такую ​​клиентскую функциональность в последнее время, и это не очень сложно с Qt, но решение зависит от особенностей сервера, и мы делаем ping-pong с сервером через каждые 50 секунд, чтобы предотвратить закрытие сокета. Но это может зависеть от конкретной реализации websocket на стороне сервера.

Смежные вопросы