![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
hokum |
![]()
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 2 Регистрация: 9.9.2009 Пользователь №: 1067 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Доброго времени суток!
Ситуация: В программе необходимо передавать/получать данные по протоколу FTP, для этой цели воспользовался классом QFtp, но так как соединение не стабильное, возникают неприятности: если сервер не доступен, то при соединении подвисает, т.е. не посылается сигнал завершения команды, аналогично происходит и с другими командами. Попытки прервать выполнение команды, используя QFtp::abort(), QFtp::close(), ничего не дают. Поискал в инете рекомендуют не пользоваться QFtp ![]() Вариант решения: Пока даную проблему решаю при помощи запуска таймера, если пришел сигнал о завершении команды, то таймер останавливается, иначе удаляю объект QFtp и создаю его заново. Вопрос: Хотелось бы узнать, насколько корректно предложенное решение, и какие у него могут быть подводные камни, есть ли другие варианты заставить QFtp отваливаться по тайм-ауту... Если это RTFM, то ткните в конкретное место, перечитал документацию и ничего не нашел про тайм-ауты у QFtp ![]() P.S. Пример ftp клиента, идущий вместе с QT, так же "подвисает"... |
|
|
kwisp |
![]()
Сообщение
#2
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
ViGOur |
![]()
Сообщение
#3
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: ![]() ![]() ![]() |
Прерывание соединения по таймауту обычная практика, как со стороны клиента, так и со стороны сервера.
Так что твое решение думаю самое-то... А сигнал QFtp::commandFinished не отрабатывает? |
|
|
kwisp |
![]()
Сообщение
#4
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
ViGOur,
он походу не отработает пока ответ от сервера не придет ответ на АБОРТ. |
|
|
hokum |
![]()
Сообщение
#5
|
Новичок Группа: Новичок Сообщений: 2 Регистрация: 9.9.2009 Пользователь №: 1067 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
на сколько нестабильное? интернет через SkyLink и соединение рветься иногда, не часто, но так как програмой пользоваться будут люди далекие от компьютеров программа не подающая признаков жизни в течение долго времени, может вызвать панику. А сигнал QFtp::commandFinished не отрабатывает? нет, ![]() Всем спасибо за отклик, если возникнут какие-то траблы с таймаутом, то отпишусь. |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 18.2.2025, 0:35 |