Russian Qt Forum
Ноябрь 24, 2024, 06:57 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 [2]   Вниз
  Печать  
Автор Тема: Не заканчивается таймер  (Прочитано 7222 раз)
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #15 : Май 12, 2011, 23:41 »

У вас есть ЯВНОЕ уловие выхода:
if (line == ".\r\n" && posLine == "\r\n")
Пока оно не выполнено - читать циклом несмотря на то что возвращает вейт фор реди рид.
Записан
blood_shadow
Гость
« Ответ #16 : Май 12, 2011, 23:49 »

Пока оно не выполнено - читать циклом несмотря на то что возвращает вейт фор реди рид.
это все понятно, но что делать если сервер связь отрубил во время передачи или пользователь захотел
вырубить программу? код то синхронный никакого сигнал - слот отношения нету
или еще одна ситуация куда хуже - сервер вовсе не отвечает или при медленном соединении
будет 20 мб полчаса передавать
Записан
blood_shadow
Гость
« Ответ #17 : Май 12, 2011, 23:56 »

а вот такой еще вопрос - можно ли как-то создать таймер который будет обходить
Qt-очередь событий, смотрел таймеры с винапи, но они принимают хендл окна, как с ними
напрямую связаться минуя очередь?
то есть мне нужен такой алгоритм:
запустил таймер на 10сек, который работает независимо от обработки событий Qt
и после 10 сек он сам остановится без processEvents()
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #18 : Май 13, 2011, 00:17 »

Нет. Я вообще не понимаю что у вас там за жесть такая. Если сервер не ответил за время, указанное в waitForBytesWritten, надо спросить юзера - ретрай? Что ф-ия возвращает false это не косяк
Записан
Страниц: 1 [2]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.049 секунд. Запросов: 23.