Russian Qt Forum
Ноябрь 22, 2024, 07:32
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Работа с сетью
>
зависание при обращении к сайту
Страниц: [
1
]
2
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: зависание при обращении к сайту (Прочитано 20200 раз)
qlewer
Новичок
Offline
Сообщений: 41
зависание при обращении к сайту
«
:
Май 11, 2020, 17:57 »
есть проект обращения к сайту и получения ответа. всё работает идеально на всех компах(qt 5.6.1)
перенес этот проект на виртуальную машину с qt 5.9.9
после строки
Код:
manager->get(request);
программа виснет на 10 секунд, "не отвечает", окно не двигается. и в среде, и экзешником на всех компах. потом отмирает и работает, как ни в чем ни бывало, моментально обрабатывает все последующие запросы. openssl ставил, не помогло. подскажите, плз, в чем дело?
Записан
tux
Global Moderator
Бывалый
Offline
Сообщений: 404
Re: зависание при обращении к сайту
«
Ответ #1 :
Май 11, 2020, 18:52 »
Ну, так может быть, это самый request сложный? Мало данных.
Записан
Digital Art
qlewer
Новичок
Offline
Сообщений: 41
Re: зависание при обращении к сайту
«
Ответ #2 :
Май 11, 2020, 19:43 »
самый простецкий запрос с QNetworkAccessManager. при чем проект 100% рабочий. но именно на qt 4.12.0 5.9.9 mingw 53_32 тормозит 10 секунд
Записан
tux
Global Moderator
Бывалый
Offline
Сообщений: 404
Re: зависание при обращении к сайту
«
Ответ #3 :
Май 12, 2020, 00:47 »
Предлагаете гадать? У телепатов ведь сейчас каникулы.
Если жалко показать код, то можно набросать тестовый проект с проблемой, иначе всё бесполезно.
Записан
Digital Art
kambala
Джедай : наставник для всех
Offline
Сообщений: 4747
Re: зависание при обращении к сайту
«
Ответ #4 :
Май 12, 2020, 11:12 »
можно взять версию Qt посвежее
Записан
Изучением C++ вымощена дорога в Qt.
UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
qlewer
Новичок
Offline
Сообщений: 41
Re: зависание при обращении к сайту
«
Ответ #5 :
Май 13, 2020, 11:55 »
Цитировать
Если жалко показать код, то можно набросать тестовый проект с проблемой, иначе всё бесполезно.
вот проект, собранный на qt 5.9.9. после нажатия на кнопку, всё окно намертво застывает на 10 секунд. если запустить ехе, в этом можно убедиться. этот же проект, собранный в qt 5.6.1, работает правильно. на другую версию qt перейти не могу, т.к. 3 дня не спал, с трудом настроил qt 5.9.9 на статическую сборку (во вложении обычная)
«
Последнее редактирование: Май 13, 2020, 12:26 от qlewer
»
Записан
tux
Global Moderator
Бывалый
Offline
Сообщений: 404
Re: зависание при обращении к сайту
«
Ответ #6 :
Май 13, 2020, 16:21 »
Ничего криминального не увидел, кроме того, что вы сетевой запрос (который в принципе не мгновенен) запускаете в основном потоке. Пока сервер всю страницу не отдаст у вас и будет всё "висеть". Особенно, если сайт "современный" и в нём 100500 скриптов.
Обычно такое делают в отдельном потоке. Вы даже начали писать QThread...
Записан
Digital Art
qlewer
Новичок
Offline
Сообщений: 41
Re: зависание при обращении к сайту
«
Ответ #7 :
Май 13, 2020, 20:03 »
exe файл не запускали? он есть в архиве, собран по этому проекту. получение ответа с сервера несоизмеримо с тем зависанием, которое происходит, дело в другом. на qt 5.6.1 всё работает идеально, на 5.9.9 одна и та же задержка длиной примерно в 10 секунд
«
Последнее редактирование: Май 13, 2020, 20:12 от qlewer
»
Записан
tux
Global Moderator
Бывалый
Offline
Сообщений: 404
Re: зависание при обращении к сайту
«
Ответ #8 :
Май 14, 2020, 12:19 »
Винды у меня нет в принципе, а в вайне вряд ли запустится.
Да и какой смысл в этом? Ну, заработает на этом сайте, будет "тормозить" на другом. Поток сделать не сложно, пример есть прямо в "помощи".
«
Последнее редактирование: Май 14, 2020, 12:22 от tux
»
Записан
Digital Art
qlewer
Новичок
Offline
Сообщений: 41
Re: зависание при обращении к сайту
«
Ответ #9 :
Май 14, 2020, 18:47 »
у тебя не заработает. дело не в сайте. нет нужды в отдельном потоке, данные с сайта принимаются за милисекунды, а запрос\ответ осуществляются в режима сигнал\слот, что не вызывает зависаний. повторюсь, проект рабочий, но именно на qt 5.9.9 он собирается неправильно. очевидно, есть какая-то мелочь, которая не учтена, но я не знаю, какая
Записан
tux
Global Moderator
Бывалый
Offline
Сообщений: 404
Re: зависание при обращении к сайту
«
Ответ #10 :
Май 14, 2020, 19:58 »
Ну, вера - она штука крепкая.
А так ли уж нужен именно этот Qt? Я смотрел на 5.15.0 и ничего, кроме того, что написал, не увидел.
Записан
Digital Art
qlewer
Новичок
Offline
Сообщений: 41
Re: зависание при обращении к сайту
«
Ответ #11 :
Май 14, 2020, 22:15 »
мне нужна статическая сборка, чтобы не вызывали раздражение море всяких библиотек. с трудом собрал на 5.9.9, оставлял комп включенным на ночь. не факт, что получится с другой версией
Записан
tux
Global Moderator
Бывалый
Offline
Сообщений: 404
Re: зависание при обращении к сайту
«
Ответ #12 :
Май 14, 2020, 23:55 »
Насколько я знаю, статическая сборка может вызвать раздражение совсем других товарищей. Лично я в ней великого смысла не вижу, но тут уж: каждому своё.
А чем библиотеки то раздражают, если не секрет? Свернуть всё в единый инсталлятор и отдать именно его - это ведь не сложно. Да и сами библиотеки ведь не обязаны быть в системных каталогах, можно положить рядом с исполняемым файлом.
Записан
Digital Art
kambala
Джедай : наставник для всех
Offline
Сообщений: 4747
Re: зависание при обращении к сайту
«
Ответ #13 :
Май 15, 2020, 11:03 »
Цитата: qlewer от Май 14, 2020, 22:15
с трудом собрал на 5.9.9, оставлял комп включенным на ночь. не факт, что получится с другой версией
они все собираются идентично. а если исключить кучу ненужных модулей из сборки, то можно собрать за час-другой, если не быстрее.
Записан
Изучением C++ вымощена дорога в Qt.
UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
qlewer
Новичок
Offline
Сообщений: 41
Re: зависание при обращении к сайту
«
Ответ #14 :
Май 15, 2020, 19:37 »
не нашёл ни одной нормальной адекватной инструкции, чтобы, повторяя все действия, можно было создать статическую сборку qt. словно каждый, кто постигает эту тайну, теряет способность ясно излагать свои мысли. при чём для меня не важна версия qt. хоть что-нибудь. слышал, что можно просто передать папку qtсо статической сборкой, но не нашёл ни одного такого архива
«
Последнее редактирование: Май 15, 2020, 19:39 от qlewer
»
Записан
Страниц: [
1
]
2
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...