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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: работа waitForReadyRead()  (Прочитано 3480 раз)
qt_user
Гость
« : Ноябрь 19, 2011, 23:46 »

Доброго времени суток,
Как стало известно ф-ция waitForReadyRead() блокирует очередь обработки событий пока сигнал readyRead()
не возникнет, но как она узнает о сигнале readyRead() если она блочит очередь обработки событий?
Записан
asvil
Гость
« Ответ #1 : Ноябрь 20, 2011, 00:47 »

возможно она делает select(sockets), копирует во внутренний буфер, а затем выполняет очередь, в которой socketnotifier проверяет размер буфера и вызывает сигналы.
Записан
qt_user
Гость
« Ответ #2 : Ноябрь 20, 2011, 01:03 »

возможно она делает select(sockets), копирует во внутренний буфер, а затем выполняет очередь, в которой socketnotifier проверяет размер буфера и вызывает сигналы.
в таком случае даже если сигнал будет вызван, то по идее он всеравно не дойдет до получателя, ведь
waitForReadyRead заблочила обработку очереди событий, скидывается мне что эта ф-ция в цикле
делает processEvents() c ExcludeUserInput флагом, но эт только предположение Улыбающийся
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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